MongoEngine:从多个字段过滤的查询对象

时间:2021-07-27 07:39:52

标签: python mongodb mongoengine

如何使用MongoEngine从同一个对象的字段之间的值关系中查询和过滤对象?

我正在尝试将 MongoEngine (0.15.0) 用于具有以下条件的对象:

OT_ERROR_INVALID_STATE

其中 max(field_a, field_b, field_c) <= constant_value field_afield_b 是同一个 MongoDB 文档的属性。

我查看了 MongoEngine documentation,发现过滤器仅限于单个字段。但我可能在这里遗漏了一些东西。

1 个答案:

答案 0 :(得分:0)

正如您分享的文档链接中所提供的,可以在 MongoEngine 中使用 Q 类来组合使用 andor 的许多约束。 以下代码可能有助于满足您的标准:

from mongoengine.queryset.visitor import Q

# Get published posts
Document.objects(Q(field_a__lte=constant_value) & Q(field_b__lte=constant_value) & Q(field_c__lte=constant_value))