使用parent()函数并覆盖父级子级块

时间:2016-01-13 15:28:47

标签: twig

我如何使用{{parent()}}并覆盖其中一个子块,我找到了一些解决方案,但看起来不对,这里有一个例子可以解释这个问题:

index.html.twig:

{% block wrapper %}
    <h1>title</h1>
    {% block one %}<p>Content of block one</p>{% endblock one %}
    {% block two %}<p>Content of block one</p>{% endblock two %}
{% endblock wrapper %}

new_index.html.twig:

{% extends 'index.html.twig' %}
{% block wrapper %}
    {{ parent() }}
    {% block two %}<p>NEW content of block two</p>{% endblock two %}
{% endblock wrapper %}

但我看到第二块的内容两次(看起来很合乎逻辑)。如何更新代码以进行修复?

1 个答案:

答案 0 :(得分:1)

哇,解决方案很简单,只需在包装块外写入块2,块没有层次结构:)

<强> new_index.html.twig:

{% extends 'index.html.twig' %}
{% block wrapper %}
    {{ parent() }}
{% endblock wrapper %}
{% block two %}<p>NEW content of block two</p>{% endblock two %}