我用Django阅读了docs on Pagination,无法在那里找到问题的解决方案。我想对一个查询集进行分页(每页5个元素),以便我的object_list
包含所有以前页面的所有元素,直到所请求页面的所有元素。
当我呼吁寻找第2页的对象时,通常会发生这种情况:
>>> p = Paginator(queryset, 5) # 5 elements per page
>>> page2 = p.page(2)
>>> page2.object_list
['6', '7', '8', '9', '10']
我想得到的是:
['1', '2', '3', '4', '5', '6', '7', '8', '9', '10']
有什么想法吗?
答案 0 :(得分:1)
在这里输入代码这是正常的,因为,这就是Paginator所做的对象
page1 = p.page(1)
page1.object_list
[1,2,3,4,5](每页5项,从第(1)项到第(5)项,这是第一页)
page2 = p.page(2)
page2.object_list
['6','7','8','9','10'](每页5项,从第(6)项到第(10)项,这是第二页)
对象Paginator的定义: 向Paginator提供一个对象列表,以及您希望在每个页面上拥有的项目数