为了覆盖FOSUserBundle
的模板,我应该创建一个同名的twig文件来保存层次结构。这很好,而且效果很好。
我的问题是twig文件不是静态的(在桌面版本中我将渲染一个twig文件,而在移动版本中我们将渲染另一个文件)。我通过测试会话变量决定在控制器上呈现哪个树枝。
是否存在动态更改树枝以在FOSUserBundle
中渲染而不覆盖所有控制器的解决方案?
答案 0 :(得分:3)
您也可以在树枝中测试会话变量。只需在树枝中包含另一个模板:
{% if app.session.isMobile %}
{% include '::mobile.html.twig' %}
{% else %}
{% include '::desktop.html.twig' %}
{% endif %}