ITPub博客

首页 > IT职业 > IT图书 > 如何在Django ORM中进行not查询?

如何在Django ORM中进行not查询?

IT图书 作者:dead_lee 时间:2021-09-11 10:08:06 0 删除 编辑

大家先设想一下,如果你要获取除超级管理员以外的所有用户,这里默认的管理员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教学中心。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/4686/viewspace-2832134/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2021-06-25

  • 博文量
    82
  • 访问量
    15432