Documentation

7. 分页

API 中集合的响应会被分页。这意味着,虽然集合在每个 web 请求中可能包含几万甚至几十百个对象,但出于 API 性能的原因,其返回的结果会有数量的限制。

当返回一个集合的结果时,您会看到类似如下的内容:

{'count': 25, 'next': 'http://testserver/api/v2/some_resource?page=2', 'previous': None, 'results': [ ... ] }

To get the next page, simply request the page given by the 'next' sequential URL.

使用 page_size=XX 查询字符串参数更改每个请求返回的结果数。

page_size 带有被设置为 200 的默认最大限制,当用户试图使用一个大于它的值(如 ?page_size=1000)时,这个限制会强制生效。但您可以在 /etc/tower/conf.d/<some file>.py 中把它设置为一个更高的值(例如:MAX_PAGE_SIZE=1000)来修改这个限制。

使用 page 查询字符串参数检索具体的结果页面。

http://<server name>/api/v2/model_verbose_name?page_size=100&page=2

返回结果的前一个和下一个链接会自动设置这些查询字符串参数。

虽然序列化器效率非常高,但您请求页的大小最好不要超过几百个。

用户界面使用较小的值以避免用户需要进行大量滚动操作。