在查询中使用 ndb IN 运算符

Use ndb IN operator in query

是否有可能以某种方式使用 ndb 运算符 "IN",以便我在模型的数组中搜索值?

例如

foo_1.array_of_values = ["item1", "item2"]
foo_1.put()

我想查询:

Foo.query("item2" in Foo.array_of_values)

那么,这可能吗?有什么解决方法吗?

我不想获取所有实体然后自己过滤。

假设 array_of_values 是一个 ndb.StringProperty(repeated=True) 那么一个常规的相等过滤器就可以达到目的 Foo.query(Foo.array_of_values == "item2")

https://cloud.google.com/appengine/docs/standard/python/ndb/queries#repeated_properties