2014-07-02 56 views
0

我現在在我的Django應用程序中使用基於類的視圖,它可以幫助我快速開發。Django CBV在每個頁面上重複相同的查詢

我還有一個關於最好的辦法問題執行下列規定:

我有我的數據庫中的一些信息,我需要總是在幾乎每一個模板我有(除非用戶沒有登錄模板)。

什麼是使用Django來做這件事的好方法?在.get()方法中使用自定義查詢創建基於類的視圖可以嗎?

謝謝:)

+1

編寫自定義模板上下文處理器。 – Rohan

回答

2

有多種不同的方法可以做到這一點。

如果您在任何地方始終如一地使用基於類的視圖,則可以使用自定義get_context_data方法創建一個公共基類,以將特定數據添加到上下文字典中。

但解決此問題的更常用方法與基於類的視圖無關,但適用於各種視圖。他們是custom template tagscontext processors

對我來說,上下文處理器可能是最好的選擇:只要你確保你的模板是用RequestContext呈現的(如果你使用任何從TemplateView繼承的視圖),那麼你的額外數據將永遠是添加到模板上下文中。

+0

謝謝你:) ContextProcessor是我失蹤;) –

相關問題