问题描述
有什么方法可以在NDB / GAE中的查询中使用JsonProperties? 我似乎找不到任何有关此的信息。
Person.query(Person.custom.eye_color == "blue").fetch()
模型看起来像这样:
class Person(ndb.Model):
height = ndb.IntegerProperty(default=-1)
#...
#...
custom = ndb.JsonProperty(indexed=False, compressed=False)
用例是这样的:我要存储有关客户的数据,首先我们只需要查询特定的数据。 现在,我们希望能够查询有关人员的任何类型的注册数据。 例如,某些人可能已将其放入系统的眼睛颜色,或JsonProperty中的任何其他自定义键/值对。
我知道expando类,但是对我来说,能够查询jsonproperty并将所有自定义属性保留在相同的“名称”上似乎要容易得多; 定制。 这意味着前端可以只遍历自定义属性。 如果将使用expando类,将很难区分。
1楼
您已考虑使用StructuredProperty,而不是使用JSONProperty。 您可以维护相同的结构,只是存储方式不同,并且可以按某些限制按StructureProperty的子组件进行过滤,但这可能就足够了。
请参阅
用于查询StructuredProperties。