我似乎无法找到有关如何让数据存储后代获得对父实体的引用的快速答案。这是一个简单的示例:
# a person who has pets
john=Person(**kwargs)
# pets
fluffy=Pet(parent=john, ...)
rover=Pet(parent=john, ...)
# lengthy details about john that are accessed infrequently
facts=Details(parent=john, ...)
- 如何使用 john 或 john 的 key 获取 fluffy、rover 和facts 的 key ?
- 通过 john(或 key),我可以获取事实的 key/entity(不是 Rover、fluffy)吗?
最佳答案
您想使用 ancestor filter :
kid_keys = db.Query(keys_only=True).ancestor(john).fetch(1000)
您可以通过指定事实类型来获取事实:
facts_key = db.Query(Details, keys_only=True).ancestor(john).get()
使用 get()
而不是 fetch()
假定 john 只有一个 Details
子级。如果不是这样,请调用 fetch
来获取全部内容。
关于python - 如何从父实体获取后代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3471054/