Symfony2 Assetic получает URL-адреса актива от внутреннего контроллера, а не шаблона - программирование
Подтвердить что ты не робот

Symfony2 Assetic получает URL-адреса актива от внутреннего контроллера, а не шаблона

Я хочу включить url в один из активов в моем пакете в контроллере, а не в шаблоне.

В частности, но не очень важно: я делаю диаграмму HighChart с использованием obHighChartsBundle, и мне приходится составлять некоторые специальные значки в некоторых точках графика, который я создаю. Поэтому мне нужен URL-адрес значка, который находится в папке с моим пакетом.

Можно ли вызвать какого-либо менеджера активов из контроллера и получить правильный URL-адрес этого актива?

4b9b3361

Ответ 1

Вы можете позвонить ($ packageName необязательно):

$this->container->get('assets.packages')->getUrl($path, $packageName);

Для более старых версий Symfony служба называется templating.helper.assets, поэтому вы используете:

$this->container->get('templating.helper.assets')->getUrl($path, $packageName);

Он использовался так же, как функция твига (на самом деле это называется в функции твига).