我是Symfony2和FOSUserBundle的初学者,虽然到目前为止我很喜欢它。到目前为止,我可以覆盖现有模板(例如layout.html.twig),以符合/登录,/配置文件等,以符合我网站其余部分的风格。但是,在使用FOSUserBundle之前,我的twig得到了导航栏中的链接和来自php控制器的其他小部件。因此,我的树枝对主页链接或帐户页面一无所知,例如我的base.html.twig遍历要呈现的各种对象的数组。在过去,我会在调用twig时将它们作为变量传递,但是现在FOSUserBundle完成所有工作,这些变量都是未填充的。
一种解决方案是覆盖所有FOSUserBundle控制器,找到它们称为模板引擎的位置,并挂钩全局函数以获取当前导航栏,获取当前状态栏等。另一种解决方案是使用树枝了解所有潜在的小部件,并根据app.user信息进行切换。真的,我想要的是让FOSUserBundle在交给twig之前附加一些信息。我想这样做而不必修改或覆盖一堆代码。谢谢!
答案 0 :(得分:2)
{% render %}
嵌入控制器操作。{% include %}
{% myAwesomeMenu %}