控制器中的symfony2 @Template

时间:2011-12-23 09:48:57

标签: php symfony

我正在使用注释路由,这就是我的控制器所拥有的:

/**
 * @Route("/", name="_index")
 * @Template()
 */

我了解路线但有人可以解释@Template()在那里做什么以及如何使用它?我找不到任何关于此的文件。

...谢谢

2 个答案:

答案 0 :(得分:7)

  

@Template注释将控制器与模板名称相关联:

此处有更多信息:http://symfony.com/doc/2.0/bundles/SensioFrameworkExtraBundle/annotations/view.html

答案 1 :(得分:1)

除了这个答案(顺便说一句,是正确的)。如果您使用TWIG引擎渲染模板,则应添加后缀“.html.twig”。

你应该看起来像这样

/**
 * @Template("MyOwnBundle:Default:myOwnView.html.twig")
 */
public function showAction()
{
     ... bla bla bla
     ... more bla bla
}

在这种情况下,您强制showAction()使用自定义模板。如果@Template()为空,则showAction()将按惯例查找关联的模板。

希望这会有所帮助..如果没有,只能“装饰”一点点答案。