【问题标题】:in Symfony2, how to render a controller directly in a smarty template?在 Symfony2 中,如何直接在 smarty 模板中渲染控制器?
【发布时间】:2013-04-07 09:47:47
【问题描述】:

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

我没能用 Smarty 完成这项工作,所以你知道是否可以做到,以及如何做到?

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

【问题讨论】:

    标签: templates symfony smarty render


    【解决方案1】:

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

    您走得越远,如果您不使用 Twig,您遇到的问题就越多。例如,几乎所有 3rd 方捆绑包都提供 Twig 模板,让您可以轻松自定义它们。

    【讨论】:

    • 当我在 Symfony 的书上阅读更多内容时,我的直觉是这样想的……不过还是谢谢你的回答!
    【解决方案2】:

    smartyBundle 确实支持 {render} 标签中的类似功能。查看Actions Extension。虽然目前 smarty 的 master 与 symfony 2.3 捆绑在一起,但在渲染标签中使用 URI 似乎存在问题。

    【讨论】:

      猜你喜欢
      • 2014-05-23
      • 1970-01-01
      • 2012-07-27
      • 2012-12-31
      • 1970-01-01
      • 1970-01-01
      • 2019-10-08
      • 2021-12-11
      相关资源
      最近更新 更多