2016-03-03 77 views
0

我有一些樹枝嵌入在樹枝中。嵌入的樹枝包含我想在其他樹枝中覆蓋的塊,這些樹枝可以延伸基部。沒有顯示此更改。我看到了類似的問題,但無法從中推斷出答案。Symfony 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 %} 
+0

在文檔中他們有很好的例子,你檢查過手冊嗎? http://twig.sensiolabs.org/doc/tags/embed.html – Farside

+0

是的,我做到了。我沒有解決問題。 – Moirae

回答

3

關於嵌入文檔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 %} 

如果聲明的基本模板側欄塊,然後將其覆蓋在擴展文件中,再次聲明嵌入和你想重寫的塊。

+0

非常感謝!問題是我試圖再次使用嵌入,與您的示例類似,沒有將其封裝在塊中。 – Moirae