本文介绍 django.db.models.query.QuerySet.reverse
的用法。
声明
reverse()
使用 reverse()
方法反转查询集元素的返回顺序。再次调用reverse()
会将排序恢复到正常方向。
要检索查询集中的 “last” 五个项目,您可以这样做:
my_queryset.reverse()[:5]
请注意,这与在 Python 中从序列末尾进行切片并不完全相同。上面的示例将首先返回最后一项,然后是倒数第二项,依此类推。如果我们有一个 Python 序列并查看 seq[-5:]
,我们将首先看到 fifth-last 项目。 Django 不支持这种访问模式(从末尾开始切片),因为在 SQL 中无法有效地做到这一点。
另外,请注意 reverse()
通常只应在具有已定义排序的 QuerySet
上调用(例如,当查询定义默认排序的模型时,或使用
时)。如果没有为给定的 order_by()
QuerySet
定义此类排序,则对其调用 reverse()
没有实际效果(在调用 reverse()
之前排序未定义,之后将保持未定义)。
相关用法
- Python Django QuerySet.select_related用法及代码示例
- Python Django QuerySet.union用法及代码示例
- Python Django QuerySet.latest用法及代码示例
- Python Django QuerySet.values用法及代码示例
- Python Django QuerySet.intersection用法及代码示例
- Python Django QuerySet.get用法及代码示例
- Python Django QuerySet.none用法及代码示例
- Python Django QuerySet.exclude用法及代码示例
- Python Django QuerySet.get_or_create用法及代码示例
- Python Django QuerySet.update_or_create用法及代码示例
- Python Django QuerySet.prefetch_related用法及代码示例
- Python Django QuerySet.first用法及代码示例
- Python Django QuerySet.annotate用法及代码示例
- Python Django QuerySet.dates用法及代码示例
- Python Django QuerySet.values_list用法及代码示例
- Python Django QuerySet.select_for_update用法及代码示例
- Python Django QuerySet.order_by用法及代码示例
- Python Django QuerySet.bulk_update用法及代码示例
- Python Django QuerySet.in_bulk用法及代码示例
- Python Django QuerySet.defer用法及代码示例
- Python Django QuerySet.aggregate用法及代码示例
- Python Django QuerySet.count用法及代码示例
- Python Django QuerySet.exists用法及代码示例
- Python Django QuerySet.explain用法及代码示例
- Python Django QuerySet.create用法及代码示例
注:本文由纯净天空筛选整理自djangoproject.com大神的英文原创作品 django.db.models.query.QuerySet.reverse。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。