【发布时间】:2012-07-20 14:56:04
【问题描述】:
NDB 中是否有一个有效的机制可以通过重复属性中的项目数进行查询?
我想做这样的事情:
Class.query(class.repeated_property.count == 2)
但这当然行不通。
【问题讨论】:
标签: google-app-engine app-engine-ndb
NDB 中是否有一个有效的机制可以通过重复属性中的项目数进行查询?
我想做这样的事情:
Class.query(class.repeated_property.count == 2)
但这当然行不通。
【问题讨论】:
标签: google-app-engine app-engine-ndb
具体可以使用ComputedProperty自动存储计数,例如
class X(ndb.Model):
prop = ndb.StringProperty(repeated=True)
prop_count = ndb.ComputedProperty(lambda e: len(e.prop))
X.query(X.prop_count == 2)
【讨论】:
GQL 中没有 len 查询语义,您需要有一个单独的属性来表示列表的长度并对其进行查询。
【讨论】: