2010-05-15 192 views
2

我必須在我的模板中包含動態頁面內容,假設我有一個左側面板,它通過視圖動態獲取數據。現在,我必須將此左側面板包含在我的所有頁面中,但我不想爲所有頁面複製代碼。有沒有辦法,我可以編寫一個腳本並將其包含在我的所有模板中,以在我的所有頁面中顯示左側面板?如何將動態頁面內容添加到模板中?

在此先感謝。

+0

你使用任何特定的框架?如果是這樣,請提供詳細信息... – miku 2010-05-15 08:50:49

+0

如果您沒有使用任何庫,您只需將可重用模板作爲字符串返回。如果你是,那麼有特定的庫解決方案。 – 2010-05-15 08:57:50

+0

我正在使用Django框架... – Ankit 2010-05-17 09:15:18

回答

0

你試圖實現的是幾乎所有我知道的模板語言直接支持。我強烈建議使用一個許多不錯的選擇爲Python:

如果您使用Genshi例如(在TurboGears Web應用程序框架的默認模板語言),你想要做的會是這個樣子的:

<html xmlns="http://www.w3.org/1999/xhtml" 
     xmlns:py="http://genshi.edgewall.org/" 
     xmlns:xi="http://www.w3.org/2001/XInclude" 
     py:strip=""> 
    <xi:include href="header.html" /> 
    <xi:include href="sidebar.html" /> 
    <xi:include href="footer.html" /> 

    <!-- The rest of your page goes here --> 
<html> 

header.htmlsidebar.htmlfooter.html只需要定義一次並在任何其他頁面中重用。

+0

感謝您的幫助Tendayi,您的建議似乎工作的情況下,內容是靜態的,即爲HTML文件。但在我的情況下,內容是動態生成的,正如我提到的,這是行不通的。 – Ankit 2010-05-17 09:17:38

相關問題