有沒有我可以利用Django的默認CBV的優勢,而不會導致超級調用get_context_data發送額外的信息。使用Django CBV沒有覆蓋get_context_data
例如,我有一個網站,CBV可以自己處理99%的工作,但我想發送一些小的靜態信息,如頁面標題,並且似乎沒有必要使用get_context_data來完成這個。
我知道我能做到以下幾點:
class Page(DetailView):
model: MyModel
template_name: 'something.html'
title: 'Some Page Title'
和參考稱號,我爲view.title
模板。不過,我希望頁面標題是我模型的一個屬性。這我能夠通過以下的事情:
get_context_data(self, **kwargs):
context = super(Page, self).get_context_data(**kwargs)
context['title'] = 'Page Title | %s' % (self.get_object().title)
return context
是否有可能對我來說,引用被稱爲在詳細視圖中的單個模型,而不運行查詢或使用get_context_data這樣我就可以得到模型的title屬性和在我的模板中使用它作爲view.title
?
我不確定你想要什麼,但也許這個'Page Title | {{object.title}}' – madzohan 2014-11-01 21:25:19