Symfony TWIG覆盖了嵌入树枝的块内容


Symfony TWIG override block content of embedded twig

我有一些嵌入在基础树枝中的树枝。嵌入的树枝包含我想在其他树枝中覆盖的块,这些树枝扩展了基础。此更改未显示。我看到了类似的问题,但无法从中推断出答案。

例如在基树枝中:

<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 %}

如果在基本模板中声明侧边栏块,则在扩展文件中覆盖它,再次声明嵌入和要覆盖的块。