我问自己一段时间的问题:
有人可以告诉我,使用@-annotation
或colon-style
呈现模板是否存在差异:
@Acme/AcmeBundle/Default/index.html.twig
Acme:AcmeBundle:Default:index.html.twig
如果有什么区别,那么 如果不是哪个是新的/正确的,应该相应地使用?
答案 0 :(得分:4)
命名空间模板和传统模板都可以在视图中按预期工作,但它不能在控制器中工作。请检查here
// namespaced templates will no longer work in controllers
$this->render('@App/Default/index.html.twig');
// you must use the traditional template notation
$this->render('AppBundle:Default:index.html.twig');
{# inside a Twig template, namespaced templates work as expected #}
{{ include('@App/Default/index.html.twig') }}
{# traditional template notation will also work #}
{{ include('AppBundle:Default:index.html.twig') }}
命名空间语法更快。
请参阅this了解详情