Php 在覆盖模板的模板中包含覆盖模板

Php 在覆盖模板的模板中包含覆盖模板,php,symfony,twig,Php,Symfony,Twig,假设我创建了以下细枝模板: src/Acme/Bundle/AcmeFooBundle/Resources/views/Foo/layout.html.twig src/Acme/Bundle/AcmeBarBundle/Resources/views/Bar/index.html.twig app/Resources/AcmeBarBundle/views/Invoice/index.html.twig AcmeBarBundle:Bar:index.html.twig应该扩展AcmeFoo

假设我创建了以下细枝模板:

src/Acme/Bundle/AcmeFooBundle/Resources/views/Foo/layout.html.twig
src/Acme/Bundle/AcmeBarBundle/Resources/views/Bar/index.html.twig
app/Resources/AcmeBarBundle/views/Invoice/index.html.twig
AcmeBarBundle:Bar:index.html.twig
应该扩展
AcmeFooBundle:Foo:layout.html.twig
。为了使这两个包保持分离,我认为覆盖
app
文件夹中的
AcmeBarBundle:Bar:index.html.twig
是明智的

事实证明,您不能包含覆盖的同一模板:

{%extends'AcmeFooBundle:Foo:layout.html.twig%}
{%block content%}
{%include'AcmeBarBundle:Bar:index.html.twig%}
{%endblock%}
不幸的是,输出是一个完全空白的页面。没有日志记录也表明有错误


问题:如何在覆盖它的模板中包含覆盖的模板?

覆盖的模板看起来像什么?这可能是一个愚蠢的问题,但它是否显示了
内容
块?“没有日志记录”对我来说听起来像个bug。如果您得到一个空白页,那么您应该在日志文件中至少得到一个错误。如果您确定日志记录配置正确(您是否有过twig错误?),那么您应该在此处报告此错误:另外,确保您使用的是最新的twig标记(查看lib/vendor/twig中的
git标记的输出,并与您的deps文件中的内容进行比较)。顺便说一句,您可以对deps文件中的所有内容执行此检查。@被覆盖的模板(
AcmeBarBundle:Bar:index.html.twig
)中没有任何块
AcmeFooBundle:Foo:layout.html.twig
肯定有一个
content
块。如果我用一些html替换
include
标记,我会得到预期的输出。@greg0ire我在其他情况下也会遇到树枝错误。我的Twig版本不是最新的,但在升级到
1.4.0-RC1
之后,问题仍然存在。我会报告这个bug,看看他们对这个问题有什么看法。你应该更新到1.3.0:RC1意味着发行候选版本,所以它可能不稳定。我刚刚写了一篇关于如何更新这里的文章:。确保您阅读了它,因为如果您所做的只是编辑deps文件,那么您就不是最新的