2010-02-01 93 views
4

乾草的傢伙,在PHP當我要加載目前存在的頁面(渲染,所有變量輸出),我會用多個視圖裝入模板

include 'mypage.php' 

這將加載網頁並渲染輸出。

我該如何在Django中做這樣的事情?我的問題是,我有一個「快速列表」,其中列出了一些熱門項目。我希望這個列表出現在每一個頁面上,即使我不叫這個對象。

有什麼想法?

編輯:觀點被稱爲shop.app.popular_items

+0

我想知道這個問題的正確答案是否真的是模板繼承與包含標記。思考? – 2010-02-01 16:05:48

回答

1
+1

上下文處理器只給你變量。您仍然需要在某處處理演示文稿,因此您最終會讓處理器自動將值放入上下文中,但您必須將正確的模板代碼放在所有模板中,或者包含它。這就是爲什麼我更喜歡Inclusion標籤(「顯式比隱式更好」)。 – 2010-02-01 16:22:14

2

編輯:

丹尼爾的回答之後,你想擁有它的每一頁上如你所說,
becomingGuru的回答可能是最好的解決方案。


這不屬於視圖(如果您不想將其顯示爲獨立頁面)。

這應該進入custom template tag

1

要回答你的問題,要成爲關於什麼時候使用上下文處理器以及何時使用包含標籤的問題,請記住上下文處理器在之間每運行模板呈現。所以只有當你知道你永遠需要價值時才應該使用它們。

相關問題