2012-07-21 9 views
10

NDBの繰り返しプロパティの項目数でクエリを行う効率的なメカニズムはありますか?NDBで繰り返しプロパティをcountで照会します

私のような何かをしたいと思います:

Class.query(class.repeated_property.count == 2) 

もちろん、これは動作しませんが。

答えて

25

具体的には、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) 
3

GQLにはlenクエリセマンティックはありません。リストの長さとクエリについては、sperateプロパティが必要です。

関連する問題