我包括在我的基礎模板與頁腳:動態包括與查詢
{% include "footer.html %}
我需要證明它在每一個頁面。但是頁腳每次頁面加載時都需要使用多個查詢來計算多個靜態頁面。 據我所知,這包括無法運行查詢,因爲任何視圖被調用。我不想在所有視圖中複製查詢,我認爲這是一個骯髒的解決方案。 這種情況下的最佳做法是什麼?我認爲這是一個很常見的問題。
我包括在我的基礎模板與頁腳:動態包括與查詢
{% include "footer.html %}
我需要證明它在每一個頁面。但是頁腳每次頁面加載時都需要使用多個查詢來計算多個靜態頁面。 據我所知,這包括無法運行查詢,因爲任何視圖被調用。我不想在所有視圖中複製查詢,我認爲這是一個骯髒的解決方案。 這種情況下的最佳做法是什麼?我認爲這是一個很常見的問題。
如果統計信息是全局的(與特定頁面/請求不相關),則可以實現自定義上下文處理器,該處理器可以計算統計信息並在上下文中添加相應的變量。 footer.html
可以使用該上下文變量/字典來進行統計。
您可以使用context processors在所有視圖運行查詢,並提供必要的數據更新您的上下文。
如何創建上下文處理器,並從那裏返回查詢? 如果這是您的願望,結果將在每個視圖中都可用?
你應該寫上下文處理器工作了這一點:
另一種選擇此處不再贅述至今都custom template tags。取決於你想要做什麼,上下文處理器可能是矯枉過正的。
儘管上下文處理器很適合在每個模板中包含標準的東西,但我懷疑您的目的是一個custom template tag,這表示整個頁腳會是一個更好的選擇 - 可能是一個包含標籤可以完成這項工作。
uhm,但它們不適用於render_to_response – tapioco123 2012-08-06 14:56:42