2017-02-08 3 views
0

Мне нужно расширить шаблон базы в веточке. это возможно? в моем коде я использую динамически делаю шаблон с контроллером, как этотКак расширить динамический шаблон в Twig?

{{ render(controller('AppBundle:Default:menuManager')) }} 

в этом контроллере я использую одно действие, чтобы выбрать правильный шаблон для отображения в моей странице, и это прекрасно работает. Но в этом случае другое: i, что меняет базовый дефолт (поэтому я предполагаю, что он расширяет его, верно?), Но я не знаю, как это сделать. Что-то вроде этого?

{{ extends(controller('AppBundle:Default:baseManager')) }} 

Но этот код не работает. Возможно? Есть другой способ? Thanks

+0

Вы пробовали '{{extends template_from_string (controller ('AppBundle: Default: baseManager'))}}'? Ссылка: http://twig.sensiolabs.org/doc/2.x/functions/template_from_string.html – Yoshi

+0

Я попытался, и я полагаю, что tempalte_from_string не работает с расширениями, но включает только – NicolaPez

ответ

1

Это зависит от условий выбора базы шаблонов, но вы можете использовать удлинитель для плетения . Я использую это в одном проекте:

{% extends app.request.host | switchBaseTemplate %} 

В этом примере я использую хост для условия. Затем вы можете легко написать расширение веточек, как описано здесь: http://symfony.com/doc/current/templating/twig_extension.html

Удачные решения.

Смежные вопросы