文章 > Python基础教程 > 如何在Django ORM中进行not查询?

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

头像

十一

2020-11-20 17:23:223963浏览 · 0收藏 · 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教学中心

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!