2013-07-08 24 views
1

我想從我的數據庫獲取兩個查詢集以在我的朋友的酒吧的網頁中使用。現在我只有兩種模式,酒精和飲料。我想從兩個模型中拉出所有對象並在同一頁面中使用。有什麼我可以添加到ListView或我需要爲此創建自己的視圖嗎?我在itertools鏈上讀了一些,但我不知道這是否會做我需要的。有什麼建議麼?django如何爲網頁拉多個查詢集

回答

1

一般來說,基於通用類的視圖最適合單個模型。話雖如此,你可以覆蓋get_context_data並添加你想要的任何上下文。在你的情況下,讓我們添加第二個查詢集:

from .models import Alcohol, Drinks 

class AlcoholListView(ListView): 
    model = Alcohol 

    def get_context_data(self, *args, **kwargs): 
     context = super(AlcoholListView, self).get_context_data(*args, **kwargs) 

     context['drinks'] = Drinks.objects.all() 

     return context 
+0

太棒了。這正是我想要它做的。現在我必須進入並篩選結果,以便我可以在子菜單中對它們進行排序。謝謝您的幫助。 – user2540528