首页 > 解决方案 > 没有序列化程序的 Django 分页

问题描述

我的 api 返回 json,数据基于 key/store etcd,所以没有查询集

我想添加分页,但我不使用模型和序列化程序

没有这个可以添加分页吗?

标签: djangodjango-rest-framework

解决方案


可以在没有查询集的情况下进行分页,Django 已经有一个分页器,可以让您对对象列表进行分页,看看它的参考

>>> from django.core.paginator import Paginator
>>> objects = ['john', 'paul', 'george', 'ringo']
>>> p = Paginator(objects, 2)
>>> p.count
4
>>> p.num_pages
2
>>> type(p.page_range)
<class 'range_iterator'>
>>> p.page_range
range(1, 3)
>>> page1 = p.page(1)
>>> page1
<Page 1 of 2>
>>> page1.object_list
['john', 'paul']

推荐阅读