Запрос повторяющегося свойства по счету в NDB
Есть ли эффективный механизм для запроса по количеству элементов в повторном свойстве в NDB?
Я хотел бы сделать что-то вроде:
Class.query(class.repeated_property.count == 2)
но, конечно, это не работает.
Ответы
Ответ 1
В частности, вы можете использовать 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)
Ответ 2
В GQL нет семантического семантического запроса, вам нужно будет иметь свойство sperate для длины списка и запроса на нем.