如何在Django ORM中進行not查詢?

dead_lee發表於2021-09-11

如何在Django ORM中進行not查詢?

大家先設想一下,如果你要獲取除超級管理員以外的所有使用者,這裡預設的管理員id為1,那在Django框架裡要以什麼形式進行設定呢?如果已經有答案了,那是不是同小編一樣,利用orm進行not查詢嗎?如果是的話,那就看以下操作是不是同小編一樣吧,如果不是,那也來看下,哪種方式更好一點吧。

Django提供了兩個選項:

exclude(<condition>)
filter(~Q(<condition>))

第一種使用預設的exclude排除法。

qs5 = User.objects.exclude(id=1)
# 輸出及結果
print(qs5)
<QuerySet [<User: yonghu1>, <User: yonghu2>, <User: yonghu3>]>

第二章使用Q()方法

from django.db.models import Q
qs6 = User.objects.filter(~Q(id=1))
# 輸出及結果
print(qs6)
<QuerySet [<User: yonghu1>, <User: yonghu2>, <User: yonghu3>]>

好啦,小夥伴覺得上面小編給大家描述的方法好不好用呢?如果學習到了知識,那就好好融會貫通使用下吧,想要了解更多學習內容,盡在

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4686/viewspace-2832134/,如需轉載,請註明出處,否則將追究法律責任。

相關文章