我想在symfony2中用2个标签构建一个简单的页面 将标签视为看起来像标签的链接。 单击链接(选项卡)时加载另一个页面(整页加载) 但是我不想复制我的主视图,所以我想将选项卡的内容渲染为部分视图。
main.twig ....我的主要观点.... ....将样式链接为标签.... 标签内容 ....页脚
tab1.twig(这是我对tab1的偏爱) ....一些内容 - 还需要访问一些变量
tab2.twig(这是我对tab2的偏爱) ....一些内容 - 需要再次访问一些变量,但不能与tab1
相同 在symfony1(或任何其他框架)中的我只是渲染tab1或tab2(取决于操作)我的选项卡内容并将其作为参数放在主视图中 this-> render('main',array( ..... 'tabContents'=> $ this-> renderPartial('tab2',array(... params ...), ..... );
问题是,我如何在symfony2中这样做? 最好不要通过twig渲染(想在我的控制器中渲染我的部分)。
答案 0 :(得分:1)
在您的控制器中:
class DemoController extends Controller
{
public function mainAction()
{
$tab1 = $this->render('AcmeDemoBundle:Demo:tab1_template.html.twig'
, array('arg1' => $arg1));
// do sth
return $this->render('AcmeDemoBundle:Demo:main.html.twig',
array('tab1' => $tab1->getContent));
}
}
请注意->getContent()
上的$tab1
。