symfony 2.1在控制器中设置表单主题

时间:2012-07-19 11:19:18

标签: php forms twig symfony-2.1

最近我在Symfony / Bridge / Twig / Extension / FormExtension.php的symfony 2.0中使用了setTheme函数,例如:

$this->get('twig')->getExtension('form')->setTheme($view, $theme);

sf2.1中没有这样的功能。什么是在控制器中设置表单主题的替代方法。提前感谢您的回答。

2 个答案:

答案 0 :(得分:3)

我检查了Symfony 2.1的最新来源,似乎可以通过:

$this->get('twig')->getExtension('form')->renderer->setTheme($view, $theme);

答案 1 :(得分:0)

以下是从控制器生成带有参数并为其设置主题的模板的完整示例。

// Create the form using $this->createForm() ...
$myView = $myform->createView();
//Set the form theme
$this->get('twig')->getExtension('form')->renderer->setTheme($myView, 'XBundle:path/to/theme/myTheme.html.twig');
$content = $this->renderView('XBundle:path/to/template/myTemplate.html.twig', array('templateParam1' => $myView, 'templateParam2' => $param2));
return new Response($content);

希望这会有所帮助。 干杯