如何在DjangoORM中进行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>]>

好啦,小伙伴觉得上面小编给大家描述的方法好不好用呢?如果学习到了知识,那就好好融会贯通使用下吧,想要了解更多学习内容,尽在python教学中心

以上是 如何在DjangoORM中进行not查询? 的全部内容, 来源链接: utcz.com/z/541193.html

回到顶部