我有一些嵌入在基础树枝中的树枝。嵌入的树枝包含我想在其他树枝中覆盖的块,这些树枝扩展了基础。此更改未显示。我看到了类似的问题,但无法从中推断出答案。
例如在基树枝中:
<body>
<div id="wrapper">
{% embed 'Bundle::sidebar.html.twig' %}{% endembed %}
</div>
</body>
侧边栏树枝包含应覆盖的块:
<div>Some content here</div>
{% block example_block %}
Content of a block
{% endblock %}
延伸底座的树枝:
{% extends 'Bundle::base.html.twig' %}
{% block example_block %}
I want different content here
{% endblock %}
基于嵌入 http://twig.sensiolabs.org/doc/tags/embed.html 的文档,我认为这应该可以工作......
基础树枝模板:
<body>
<div id="wrapper">
{% block sidebar %}
{% embed 'Bundle::sidebar.html.twig' %}{% endembed %}
{% endblock %}
</div>
</body>
延伸底座的树枝:
{% extends 'Bundle::base.html.twig' %}
{% block sidebar %}
{% embed "Bundle::sidebar.html.twig" %}
{# This block is defined in "sidebar.html.twig" #}
{# and we override it right here: #}
{% block example_block %}
I want different content here
{% endblock %}
{% endembed %}
{% endblock %}
如果在基本模板中声明侧边栏块,则在扩展文件中覆盖它,再次声明嵌入和要覆盖的块。