所以,我有3个模板:1. 带一些参数的嵌入式小部件,2. 适用于每个页面的全局布局,3. 单个页面。
我想在布局中创建一个块,可以被页面覆盖,但是当我想将此块放在嵌入式小部件中时,它无法正常工作。
文件:Widget/awesome.html.twig
(嵌入式小部件)
<div id="{{id|default('awesomeWidget')}}">
{% block widget_body %}
{% endblock %}
</div>
文件:Layout/layout.html.twig
{% block layout_body %}
{% embed 'AcmeFoobarBundle:Widget:awesome.html.twig' with
{'id':'myAwesomeWidget'} only %}
{% block widget_body %}
{% block I_WANT_TO_OVERRIDE_THIS %}
{% endblock %}
{% endblock %}
{% endembed %}
{% endblock %}
文件:Portal/page.html.twig
{% extends 'AcmeFoobarBundle:Layout:layout.html.twig' %}
{% block I_WANT_TO_OVERRIDE_THIS %}
Hello World
{% endblock %}
有没有办法实现这个想法?