我正在评估我是否想要使用symfony2和twig进行我即将推出的项目,我是symfony2 / Twig世界的新手,我们一直在逐步为每个站点构建框架。我的主要问题是,如果我使用基本树枝模板,我的所有页面都是继承的,那么该基页是否可以拥有自己的控制器?以及拥有自己的控制器的子页面?
因此,例如,如果标头有一些逻辑永远不会改变的动态内容,我就不需要在任何页面的前端控制器中替换该逻辑,但内容块将在前端控制器中生成。
我将有多个开发人员参与该项目,并且说实话,如果我可以让他们在配置项目之后写出非常少量的内容,这将是非常棒的。
EX
<!-- Very Simplified example:baseTemplate -->
<body>
<div id="headerContainer">
{% block headerBlock %}{% endblock %}
</div>
<div id="bodyContainer">
{% block bodyBlock %}{% endblock %}
</div>
<div id="footerContainer">
{% block footerBlock %}{% endblock %}
</div>
</body>
我想到的另一种方法是构建一个扩展控制器类的类,并具有为其他开发人员处理此代码的函数,他们可以在呈现模板时调用它们。
你将如何处理这个问题?我再也不是一个经验丰富的Symfony开发人员,因此更多地考虑最佳实践以及它是否可行。
提前感谢您的时间。 乔恩
答案 0 :(得分:0)
执行此操作的最佳方法是使用DI容器,例如,如果要创建复杂菜单,可以使用KnpLabs / KnpMenuBundle,创建MenuBuilder并在需要它的控制器中使用它。在这里您可以找到更多示例:
http://knpuniversity.com/screencast/question-answer-day/symfony2-users-menu-cms#menus
祝你好运=)