當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Python Django QuerySet.reverse用法及代碼示例

本文介紹 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() 之前排序未定義,之後將保持未定義)。

相關用法


注:本文由純淨天空篩選整理自djangoproject.com大神的英文原創作品 django.db.models.query.QuerySet.reverse。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。