2
{block}標記和{include}標記之間的主要區別是什麼?我知道它們都用於模板繼承,但是它能更快地工作還是提供更大的靈活性?{block}和{include}有什麼區別?
{block}標記和{include}標記之間的主要區別是什麼?我知道它們都用於模板繼承,但是它能更快地工作還是提供更大的靈活性?{block}和{include}有什麼區別?
{include}
函數只是指另一個模板文件,其內容應包含在輸出中的該點。它與任何類型的繼承無關,並且像PHP的include
/require
和函數調用之間的交叉一樣工作,因爲您可以傳入參數並且變量可以具有本地範圍。
{block}
函數用於Template Inheritance。雖然可以通過巧妙使用子模板來模擬這些效果,但其基本思路是非常不同的。正如文檔中所述,父模板可以有多個命名模塊,並且子模板可以覆蓋其中的任何一個或所有模板,通過名稱引用它們,其餘代碼直接來自父模板。
想到這一點的一種方式是{include}
如果您想要將多個內容部分包含到多個頁面結構中,可以使用{include}
,而如果您需要許多具有相似結構但具有不同結構的頁面,則模板繼承將更爲合適內容在某些部分。當然,你可能希望兩者兼有。