Google app engine 如何在Google App Engine(Python)NDB/数据存储中从子实体查询父实体?

Google app engine 如何在Google App Engine(Python)NDB/数据存储中从子实体查询父实体?,google-app-engine,google-cloud-datastore,python-2.7,app-engine-ndb,Google App Engine,Google Cloud Datastore,Python 2.7,App Engine Ndb,我的问题是非常基本的,我想知道从应用程序引擎Python中的子对象直接访问父实体属性值的正确方法。例如,我有以下模型模式。我正在使用Python2.7和NDB class Gallery(ndb.Model): category = ndb.StringProperty() title = ndb.StringProperty() subtitle = ndb.StringProperty() class Image(ndb.Model):

我的问题是非常基本的,我想知道从应用程序引擎Python中的子对象直接访问父实体属性值的正确方法。例如,我有以下模型模式。我正在使用Python2.7和NDB

class Gallery(ndb.Model):
    category    = ndb.StringProperty()
    title       = ndb.StringProperty()
    subtitle    = ndb.StringProperty()

class Image(ndb.Model):
    blob_key    = ndb.BlobKeyProperty()
    title       = ndb.StringProperty()
    gallery     = ndb.StringProperty()
    is_slider   = ndb.StringProperty()
这里的“画廊”是“图像”的父级。它们形成一个实体组展览=>画廊=>图像。 我想显示图像模型中的图像以及它们所属的图库细节。我可以从父实体(图库中的图像)访问子实体,但不能从父实体访问子实体。我不想使用图像模型作为库模型中的StructuredProperty。大多数情况下,我都是基于gallery以外的其他标志显示所有图像中的图像(其中一种情况是,如果是_slider=“yes”,则会从所有图像生成幻灯片。因此,直接从图像中查询),但仍然希望显示相关gallery的信息,这就是我想知道如何访问父数据的原因


我觉得这是一个非常普遍的问题,需要寻找一个简单的解决方案,比如直接访问父级,而不是返回到实体组和查询库模型的顶部,使用一些复杂的逻辑。感谢您的帮助。

使用:
image\u instance.key.parent().get()


谢谢Mjibson。这正是我所缺少的。如何在模板循环中使用它(当循环在图像实例上时)?我使用的是Jinja2。如果你有问题,问一个问题,不要发表评论。