在Symfony2中,如何直接在智能模板中呈现控制器?

时间:2013-04-07 09:47:48

标签: templates symfony smarty render

我是Symfony的新手,到目前为止一切正常,除了以下内容: 我安装了SmartyBundle来使用Smarty模板引擎而不是默认的Twig。它运作良好。但是在第79页的the Symfony book中,他们解释了一个非常简洁的Twig函数:直接从模板中嵌入控制器结果的能力。

我没有设法与Smarty合作,所以你知道是否可以做到这一点,以及如何做到这一点?

我想我可以使用forward方法从我当前的控制器调用另一个控制器来获得相同的结果,但在我看来,它提供了更多的分解功能来使用这个渲染功能。

2 个答案:

答案 0 :(得分:6)

要么使用Twig,要么习惯于缺少许多有用的功能,并且对Smarty的支持很少,因为很少有人将它与Symfony一起使用。哎呀,即使使用Symfony的内置PHP模板,从社区获得帮助也是有问题的,因为大多数人都使用Twig。

如果您不使用Twig,您走的路越远,遇到的问题就越多。例如,几乎所有第三方软件包都提供了允许您轻松自定义的Twig模板。

答案 1 :(得分:0)

smartyBundle支持{render}标记中的类似功能。看看Actions Extension。虽然目前掌握了symfony 2.3的smarty捆绑包,但似乎存在关于在渲染标记中使用URI的问题。