Google app engine 父/祖先关系的引用属性?

Google app engine 父/祖先关系的引用属性?,google-app-engine,Google App Engine,在AppEngine中引用父/祖先关系的属性时,最佳做法是什么?我应该添加一个从父对象指向子对象的引用属性,以便于访问父对象中的子对象,还是应该“吸取”并从父对象执行祖先查询以获取其子对象。如果只有一个子对象,则可以使用已知的密钥名称,以便直接获取子对象(因为您知道父对象的密钥). 这非常有用,因为只要知道父项的密钥名或id,就可以轻松地直接获取子项 child_key = db.Key.from_path('ChildKind', 'knownname', parent=parent_key

在AppEngine中引用父/祖先关系的属性时,最佳做法是什么?我应该添加一个从父对象指向子对象的引用属性,以便于访问父对象中的子对象,还是应该“吸取”并从父对象执行祖先查询以获取其子对象。

如果只有一个子对象,则可以使用已知的密钥名称,以便直接获取子对象(因为您知道父对象的密钥). 这非常有用,因为只要知道父项的密钥名或id,就可以轻松地直接获取子项

child_key = db.Key.from_path('ChildKind', 'knownname', parent=parent_key)
child = db.get(child_key)

如果有多个子项,则可以在父项上存储键列表(可以不索引),或者使用祖先查询。我想说,这取决于您的数据如何更新、报告(呈现)以及数据量。换句话说,这取决于应用程序的需要。

谢谢,我想我会选择已知的关键解决方案。