Я использую сервис как глобальную переменную twig. В конструкторе сервиса я установил значение свойства по умолчанию $title
. Первоначально он работает .... Twig отображает значение свойства с помощью команды {{ service.getTitle() }}
в файле шаблона. Но после обновления свойства службы конструктором контроллеров и рендеринга представления значение не обновляется на экране. Цель - установить глобальную переменную twig контроллерами для отображения во всех представлениях. Как это сделать?
twig.yaml
twig:
globals:
pageMap: "@Base.PageMap"
services.yaml
services:
Base.PageMap:
class : App\Bundle\Base\Services\PageMap
public: true
контроллер
public function __construct(PageMap $pageMap)
{
$pageMap->setTitle('Registration listing');
}
шаблон веточки:
<div class="title">{{ pageMap.getTitle() }}</div>