在类中创建一个引用到他自己的类型

时间:2013-01-14 20:31:28

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

我真的不知道怎么写这个问题的标题:P

因此,在谷歌应用引擎中,我想创建一个可以拥有相同类型“儿子”的类:

class Chapter(db.Model):
    title = db.StringProperty(required=True)
    note = db.TextProperty()
    father = db.ReferenceProperty(Chapter, collection_name='sons')
    order = db.IntegerProperty(default=0)

我收到了错误

NameError: name 'Chapter' is not defined

有可能创造这个吗?或者这是一个非常愚蠢的想法?

1 个答案:

答案 0 :(得分:7)

您需要使用SelfReferenceProperty

class Chapter(db.Model):
    title = db.StringProperty(required=True)
    note = db.TextProperty()
    father = db.SelfReferenceProperty(collection_name='sons')
    order = db.IntegerProperty(default=0)