如何在Twig中扩展动态模板?

时间:2017-02-08 13:47:55

标签: symfony twig extends

我需要在树枝中扩展不同的基本模板。这个有可能?在我的代码中我使用dinamically渲染模板与这样的控制器

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

在该控制器中我使用一个动作来选择要在我的页面中呈现的正确模板,这工作正常。但在这种情况下是不同的:我改变了我的基本默认值(所以我假设扩展它,对吧?)但我不知道这是怎么做的。像这样的东西?

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

但这段代码不起作用。有可能吗?有不同的方式?感谢

1 个答案:

答案 0 :(得分:1)

这取决于选择模板库的条件,但您可以使用 twig扩展。我在一个项目中使用它:

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

在这个例子中,我使用主机作为条件。 然后,您可以轻松编写枝条扩展,如下所述: http://symfony.com/doc/current/templating/twig_extension.html

有好的开发。