如何在查询性能目的中使用 Django 分页器?
How to use Django paginator in a query-performance purpose?
我刚刚阅读 the doc 关于 Django 分页的内容。
从例子来看,好像需要这样使用:
- 加载所有对象
- 创建分页器对象以跨页拆分对象。
现在,假设我不想对 returns 100000 个条目的超长查询使用分页。
我一次加载所有 100000 个对象需要很长时间。
我想做的是每页只加载 10 个对象。有没有办法使用 Django paginator 和一些 limit/offset 查询来做到这一点?
谢谢。
不,Paginator 不会将所有对象加载到内存中。如果您将查询集传递给分页器,那么它会使用 .count()
来获取对象的数量。
我刚刚阅读 the doc 关于 Django 分页的内容。
从例子来看,好像需要这样使用:
- 加载所有对象
- 创建分页器对象以跨页拆分对象。
现在,假设我不想对 returns 100000 个条目的超长查询使用分页。 我一次加载所有 100000 个对象需要很长时间。
我想做的是每页只加载 10 个对象。有没有办法使用 Django paginator 和一些 limit/offset 查询来做到这一点?
谢谢。
不,Paginator 不会将所有对象加载到内存中。如果您将查询集传递给分页器,那么它会使用 .count()
来获取对象的数量。