【问题标题】:Understanding classes in ndb model - GAE了解 ndb 模型中的类 - GAE
【发布时间】:2015-04-15 18:41:00
【问题描述】:

我有 database.py 文件,它有一个具有不同属性的 Class Parent(ndb.model)。如果我将 Parent 作为参数传递给另一个类会发生什么,这样

class child(Parent)
Pass

如果我是硬编码,我可以在 Class child 中定义 Parent 的属性吗?

【问题讨论】:

    标签: python database google-app-engine entity google-cloud-datastore


    【解决方案1】:

    是的,这将起作用,并且子类将继承父属性:

    class Parent(ndb.Model):
        lastname = ndb.StringProperty()
    
    class Child(Parent):
        name = ndb.StringProperty()
    
    Child(lastname='Doe', name='John').put()
    

    您可以拥有任意数量的混合组件和子组件,属性将按照语言 [python] 规则正确解析。

    请记住,只有实际保存的实体才会在数据存储区中,在此示例中为 Child。也就是说,只会存在这个kind

    如果您想通过父级查询,以获取所有 Animals 作为规范示例,您需要使用 PolyModel

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-02-19
      • 2023-03-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-14
      相关资源
      最近更新 更多