当前位置: 首页 > 面试题库 >

如何在Django查询中执行OR过滤器?

白念
2023-03-14
问题内容

我希望能够列出用户已添加的项目(他们被列为创建者)或已被批准的项目。

所以我基本上需要选择:

item.creator = owner or item.moderated = False

我将如何在Django中执行此操作?(最好使用过滤器或查询集)。


问题答案:

有些Q对象允许进行复杂的查找。例:

from django.db.models import Q

Item.objects.filter(Q(creator=owner) | Q(moderated=False))


 类似资料:
  • 问题内容: 我需要从Django模板中执行过滤查询,以获取与视图中的python代码等效的一组对象: 在我的模板中,我想做 但我似乎无法找出如何编写FILTER。 问题答案: 你不能这样做,这是设计使然。Django框架的作者打算将表示代码与数据逻辑严格分开。过滤模型是数据逻辑,而输出HTML是表示逻辑。 因此,你有几种选择。最简单的方法是进行过滤,然后将结果传递给。或者,你可以在模型中编写一个方

  • 问题内容: 从一个示例中,您可以看到一个多重或查询过滤器: 例如,这导致: 但是,我想从列表中创建此查询过滤器。怎么做? 例如 问题答案: 你可以按以下方式链接查询:

  • 我试图使用Django将PostgreSQL表提取到HTML中,当我在PostgreSQL的查询工具中执行空间查询时,我得到了完美的结果,但当我试图从Django执行相同的脚本时,我得到了所有的数据行。谢谢你提前帮忙。 姜戈剧本 HTML

  • 问题内容: 我正在尝试获取IP范围查询以处理一组文档,但是没有任何结果。 映射(我已经尝试了和): 数据看起来像这样(许多实例的值都不同) 现在,我去看了官方的ES文档,但是没有IP范围示例,但是我在Git上找到了一个不起作用的示例。它看起来如下: 当我用手指指住字段和地址时,上面的方法引发了一些令人鼓舞的解析错误,但最终没有返回结果。 我还尝试了标准范围语法: 这也没有返回结果。如何查询一系列I

  • 问题内容: 我想编写一个与此SQL查询等效的Django查询: 如何构造Django queryset过滤器? 这是行不通的,因为它是过滤器。我想要过滤器以获取单个查询集的并集。 问题答案: 通过文档

  • 问题内容: 在Django模型QuerySets中,我看到比较值存在和,但是存在(不等于?)。 我想使用不等于过滤掉: 例: 我想要 在不正确的语法。我试过。 我最终使用: 问题答案: 也许Q对象可以帮助解决此问题。我从未使用过它们,但似乎可以将它们取反并组合起来,就像普通的python表达式一样。 更新:我只是尝试了一下,它似乎工作得很好: