我在一个页面中使用两个查询集,并且我希望每个页面都有不同的分页
这是我基于类的视图:
class MainListView(ListView):
queryset = Post.objects.all()
template_name = 'main.html'
context_object_name = 'posts'
def get_context_data(self, **kwargs):
context = super(MainListView, self).get_context_data(**kwargs)
context['news'] = EventsPost.objects.all()
context['posts'] = self.queryset
return context
我希望Post模型由3分页,EventsPost由6分页 感谢您的回复
答案 0 :(得分:1)
由于不需要分页,因此我将使用TemplateView
,并在get_context_data
方法中将两个查询集添加到上下文中。
class MainListView(TemplateView):
def get_context_data(self, **kwargs):
context = super(MainListView, self).get_context_data(**kwargs)
context['news'] = EventsPost.objects.order_by('-pk')[:6]
context['posts'] = Post.objects.order_by('-pk')[:3]
return context
如果要在其他字段上排序,则可以将其更改为其他内容,例如order_by('-date')