Django:通过“field__isnull=True”或“field=None”过滤查询集?

2024-01-09

我必须通过动态值(可以是“无”)过滤查询集:我可以简单地写:

filtered_queryset = queryset.filter(field=value)

或者我应该检查“无”:

if value is None:
    filtered_queryset = queryset.filter(field__isnull=True)
else:
    filtered_queryset = queryset.filter(field=value)

该行为是否取决于特定的 DBMS?


ORM 将处理None(将其转换为 NULL)为您并返回QuerySet对象,所以除非你需要抓住None输入第一个例子就可以了。

>>> User.objects.filter(username=None)
[]
>>> type(_)
<class 'django.db.models.query.QuerySet'>
>>> str(User.objects.filter(username=None).query)
SELECT "auth_user"."id", "auth_user"."username", "auth_user"."first_name", "auth_user"."last_name", "auth_user"."email", "auth_user"."password", "auth_user"."is_staff", "auth_user"."is_active", "auth_user"."is_superuser", "auth_user"."last_login", "auth_user"."date_joined" FROM "auth_user" WHERE "auth_user"."username" IS NULL
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Django:通过“field__isnull=True”或“field=None”过滤查询集? 的相关文章

随机推荐

  • 如何将光标移动到ckeditor5中的文本末尾

    ckeditor5 当我使用editor editing view focus 光标在文本的开头 如何将光标移动到文本的结尾 为此 请在编辑器模型 https ckeditor com docs ckeditor5 latest frame
  • Google 地图 V3 API - 超出查询限制,但只有 1 个请求

    最近 当我发送单个地理编码请求时 我开始从 Google Map API 收到 超出查询限制 状态响应 我真的很困惑为什么会发生这种情况 我绝对没有达到每日 2 500 条请求的限制 另外 如果我只是简单地发布我的请求 http maps
  • MySQL 是否有命令删除除 PRIMARY 索引之外的所有索引?

    我有一个数据库表 有一个索引 其中键名为 PRIMARY 类型为 BTREE 唯一为 YES 打包为 NO 列为 ID 基数为 728 排序规则为 A 我有一个在页面加载时运行的脚本 该脚本将条目添加到 MySQL 数据库表中 并从数据库表
  • 使用 Qt 从 SQLite 中选择

    我尝试在 Linux 上的 Qt 4 5 3 上处理 SQLite 数据库 我已经创建了数据库 然后 我尝试在 Qt 上执行选择 db QSqlDatabase addDatabase QSQLITE db setDatabaseName
  • 是否可以在 PHP 接口中创建可选方法?

    我正在开发一个 PHP 项目 我有几个需要实现接口的类 有些类不需要实现接口中定义的所有方法 是否可以仅以更干净的方式实现某些方法 接口指定了方法must由实现它的类来实现 你不能跳过一些 尽管你可以创建额外的 你可以做的就是将你的接口分成
  • 在 Java 8 中扩展 List

    我经常想将一个列表映射到另一个列表 例如 如果我有一个人员列表 并且我想要他们的姓名列表 我想要这样做 GOAL List
  • cd 程序文件错误:找不到位置参数

    PS C gt cd Program Files 当我发出这个命令时 我不知道为什么 但它不接受Program Files 相同的命令在中运行得很好cmd 这是它显示的错误 Set Location A positional paramet
  • 装饰基于类的视图的两种方法有什么区别?

    我正在编写一个继承自 ListView 的视图 并尝试将该视图限制为登录用户 https docs djangoproject com en dev topics class based views decorating in urlcon
  • 创建 HUE 颜色条

    我正在创建一个颜色选择器 现在我需要创建一个 HUE 颜色条 创建它的一种方法是通过 XAML 中的渐变停止点 例如
  • 方案和浅绑定

    define make lambda x lambda y cons x list y let x 7 p make 4 cons x p 0 我是计划和函数式程序的新手 所以我对遍历程序有点笨拙 但我知道如果我使用深度绑定 该程序将返回
  • 如何使用函数进行模板模板参数推导?

    考虑一组函数 例如 template lt class Fun gt void A const Fun template lt class Fun gt void B const Fun template lt class Fun gt v
  • GWT 1.6 项目战争布局 - 混合源代码和编译器生成的工件?

    刚刚完成了一个基于 GWT 1 5 的项目 我正在考虑如何迁移到 1 6 我很惊讶地发现 GWT 似乎想将其编译输出写入 war 目录 通常在该目录中将项目置于源代码控制之下 这背后的原因是什么 谷歌真的认为这是个好主意吗 是否有解决方法可
  • 如何从HDFS文件系统执行hadoop jar?

    我总是从本地文件系统执行作业 如下所示 hadoop jar home usr jar myjar jar com test TestMain 如何执行相同的命令 但 myjar jar 将位于 hdfs 中 就像是 hadoop jar
  • 如何转义字段名称方括号内的方括号

    我有一些生成列名的动态 SQL 一个简单的例子可能是这样的 SELECT dbo getSomething 123 Eggs scrambled or Bacon fried 最终的列名称应该是这样的 鸡蛋 炒 或培根 煎 如果我尝试运行它
  • 使用 LESS 递归获取当前索引

    我正在尝试做到这一点 我有一个像这样的数组 levels level one level two level three level four level five level six level seven level eight 每个级
  • iPhone超声波检测(超过22kHz)

    iphone 3GS及以上型号能检测到的最大频率是多少 我一直在探索iPhone音频 我需要在没有任何外部设备的情况下检测 22 kHz 的声音频率 是否可以 如果麦克风设计得好 它将有一个抗混叠滤波器 其滚降始于略低于奈奎斯特频率 以确保
  • ffmpeg水印处理速度很慢

    我正在开发一个视频处理项目并使用 ffmpeg 进行水印 我完全实现了我想要的 但问题是这个过程非常非常慢 我在 32 位操作系统 Microsoft Windows 8 64 位 CPU 上使用具有 4GB RAM 的英特尔智能第二代系列
  • iOS8中用户默认的plist文件存储在哪里?

    我找不到首选项 plist 文件 因为首选项文件夹为空 要获取库文件夹 我使用 println NSSearchPathForDirectoriesInDomains LibraryDirectory UserDomainMask true
  • 在 MongoDB 中的 Angular.js 中显示图像

    我最近打开了另一个关于如何使用 node js mongoose 在 mongodb 数据库中存储图像的线程 使用猫鼬保存图像 https stackoverflow com questions 27353346 saving image
  • Django:通过“field__isnull=True”或“field=None”过滤查询集?

    我必须通过动态值 可以是 无 过滤查询集 我可以简单地写 filtered queryset queryset filter field value 或者我应该检查 无 if value is None filtered queryset