无法找到模板Symfony2

时间:2013-08-03 13:23:37

标签: symfony include twig

我想在我的视图中包含一个模板,但它不起作用,我有这个错误:

  

无法在第46行的:: base.html.twig中找到模板“:: StyleBlock / light-pattern.html.twig”。

我的代码:

{% for zone in content.blocks %}
    {% set path = '::StyleBlock/' ~ zone.styles %}
    {% include path %}
{% endfor %}

详情我有这条消息:

InvalidArgumentException:文件“views / StyleBlock / light-pattern.html.twig”不存在(在:/ var / www / gathena / app / Resources中)。

但路径是正确的,我不明白。

我使用Symfony 2.3并获得了我的目录

的良好许可

2 个答案:

答案 0 :(得分:7)

你给出了错误的路径,它应该是:

{% for zone in content.blocks %}
    {% set path = 'CmsCmsBundle:StyleBlock:' ~ zone.styles %}
    {% include path %}
{% endfor %}

至于路径src/Cms/CmsBundle/Resources/views/StyleBlock/

第一个参数是你的包,第二个是这种情况下的控制器StyleBlock,所以你的视图在你Resources/views/StyleBlock目录的包中,最后一个参数是你的循环定义的模板名在这种情况下变量。它应该只是您的模板名称,没有任何绝对路径。所有参数均由:

分隔

答案 1 :(得分:0)

试试这个:

::StyleBlock:light-pattern.html.twig