Django CBV ListView,访问分页和取消分页的结果

时间:2018-03-30 11:01:18

标签: django django-class-based-views django-pagination

我使用具有分页和搜索功能的通用视图类ListView构建了一个列表视图。现在,我希望在同一页面中包含一个带有所有结果标记的地图,而不需要分页。

是否可以在不进行重复查询的情况下同时获取分页结果和取消分页结果?

1 个答案:

答案 0 :(得分:1)

我们可以通过覆盖方法def get_context_data(self, **kwargs)来实现。它只需要一个查询。

class MyListview(ListView):

    def get_context_data(self, **kwargs):
        kwargs['obj_list'] = list(kwargs['obj_list'])
        my_obj_list = kwargs['obj_list']
        context = super(MyListview, self).get_context_data(**kwargs)
        context['my_obj_list'] = my_obj_list
        return context