【发布时间】:2010-05-29 02:49:38
【问题描述】:
有没有一种简单的方法可以在不影响数据库的情况下丢弃/删除查询集中的最后一个结果?
我正在尝试在 Django 中对结果进行分页,但不知道给定查询的对象总数。
我计划使用下一个/上一个或旧/新链接,所以我只需要知道这是第一页和/或最后一页。
首先很容易检查。要检查最后一页,我可以将结果数与页面大小进行比较或进行第二次查询。当最后一组中的结果数等于页面大小时,第一种方法无法检测到最后一页(即 100 条记录被分成 10 页,最后一页正好包含 10 个结果),我想避免进行第二次查询。
我目前的想法是我应该从数据库中获取 pagesize + 1 结果。如果查询集长度等于 11,我知道这不是最后一页,我想在将查询集传递给模板之前丢弃查询集中的最后一个结果。
【问题讨论】:
-
Django 内置了pagination support,因此您不需要手动执行此操作。