知行编程网知行编程网  2022-11-03 10:30 知行编程网 隐藏边栏  3 
文章评分 0 次,平均分 0.0
导语: 本文主要介绍了关于如何在Django ORM中进行not查询?的相关知识,包括django查询数据库,以及为什么django的orm比较慢这些编程知识,希望对大家有参考作用。

如何不在 Django ORM 中查询?


我们先想象一下,如果要获取除超级管理员以外的所有用户


,这里默认的管理员id是1,那么在Django框架中应该设置成什么形式呢?如果已经有了答案,是不是和编辑器一样,用orm表示不查询?如果是,那么看看下面的操作是否和编辑器一样,如果不是,那么看看哪种方法更好。



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>]>

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写
扫一扫二维码分享