2012-06-03 73 views
0

我想組織包含僅3個街區中的Symfony2我的基地佈局:標題,內容和頁腳。我希望每個模塊都有一個模板。 「內容」模板將是一個空白的模板,僅顯示每個部分的模板,遵循「3級」指令。 但我不知道如何將頁眉和頁腳模板。我已經做到了打造「旁路」的模板,因此,例如,內容擴展頁腳,頁腳擴展頭和頭擴展基地,但它看起來非常糟糕。 謝謝。是否可以在symfony2中擴展2個模板?

回答

4

可以使用嵌入標記,它結合了包括行爲和延伸。它允許您包含另一個模板的內容,就像include一樣。但它也可以讓你覆蓋包括模板中定義的任何塊,延伸的模板時一樣, 但1.8版本需要

The embed tag

3

您不能在Twig中擴展多個模板,反正它是不合邏輯的。
您應該使用include,這是一個有點不同。

的常用方法是具有一個基本模板,這將通過所有其他的人被擴展,除了報頭,並且將被包含在它的頁腳。

base.html.twig:

... 
<body> 
    {% include '::header.html.twig' %} 
    {% block body %}{% endblock %} 
    {% include '::footer.html.twig' %} 
</body> 
... 

在其他模板,你的包比如訪問量:

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

{% block body %} 
Hello world! 
{% endblock %}