我在Symfony的控制器中创建了两个函数,如下所示:
首先是newAction
public function newAction()
{
return $this->render('AcmeTaskBundle:Default:index.html.twig');
}
然后subAction
public function subAction()
{
echo "hello";
}
我想将index.html.twig
中的一些数据用于subAction
函数。
我怎么能这样做?
答案 0 :(得分:1)
您只需要使用
$content = $this->renderView('AcmeTaskBundle:Default:index.html.twig')
这将在变量
中呈现模板的内容http://symfony.com/doc/current/book/controller.html#rendering-templates
编辑根据评论
如果您只需要渲染模板的一部分 - 那么您应该重构模板。
将 index.html.twig 中的部分代码排除在单独的模板文件中,并将其包含在 index.html.twig 中:
...
{% include 'AcmeTaskBundle:Default:subpage.html.twig' %}
...
然后在 subAction()中致电:
$content = $this->renderView('AcmeTaskBundle:Default:subpage.html.twig')