如何在一个模板中合并x视图

时间:2017-06-13 21:56:04

标签: django python-3.5

我正在尝试在名为blogpage的模板中使用两个视图列表(post_list和classification_list)。这就是我为解决问题所做的工作,但它不起作用:

class GenViewList(ListView):
    model = Posting,Classification
    template_name = 'Blog/blogpage.html'

    def get_context_data(self, **kwargs):
        context=super(BlogViewList,self).get_context_data(**kwargs)
        context['latest_post_list']=Posting.objects.filter().order_by('-id')[:30]
        context['classification_list']=Classification.objects.all().order_by('id')
        return context

任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:0)

您可以将其设为TemplateView

from django.views.generic import TemplateView

class GenViewList(TemplateView):
    template_name = 'Blog/blogpage.html'

    def get_context_data(self, **kwargs):
        context=super(BlogViewList,self).get_context_data(**kwargs)
        context['latest_post_list']=Posting.objects.filter().order_by('-id')[:30]
        context['classification_list']=Classification.objects.all().order_by('id')
        return context

答案 1 :(得分:0)

ListView不适用于2种不同的型号。您可以提供get_queryset,但在构建get_context时,您似乎需要一些不同的内容,例如TemplateView