Twig:使用embed覆盖元素

时间:2016-09-07 07:33:09

标签: php twig symfony

我有以下模板结构,我想用embed覆盖一个块:

base.html.twig

<!DOCTYPE>
<html>
   <head></head>
   <body>
      {% embed 'header.html.twig' %}
         {% block content %}{% endblock %}
      {% endembed %}
   </body>
</html>

header.html.twig

{% block content %}{% endblock %}

page.html.twig

{% extends 'base.html.twig' %}

{% block content %}
   <p>Some content</p>
{% endblock %}

如果我现在用我的控制器加载page.html.twig,我认为它应该显示&#34;一些内容&#34;但它不起作用。有谁知道我做错了什么?

1 个答案:

答案 0 :(得分:0)

“embed标签结合了include和extends的行为。它允许你包含另一个模板的内容,就像include一样。但它也允许你覆盖包含模板中定义的任何块,比如扩展模板时。 “ twig document about embed block

您可以使用import或include。我建议包括这个状态