Google App Engine中的自引用ReferenceProperty

Jos*_*ury 2 python google-app-engine

我在App Engine(Python)中使用ReferencePropertys时遇到了一些麻烦.

为了一点乐趣,我正在尝试建模文件夹/文件系统,但无法获取文件夹引用文件夹.

我的第一次尝试是这样的:

class Folder(db.Model):
    id = db.StringProperty()
    name = db.StringProperty()
    created = db.DateTimeProperty(auto_now_add=True)
    folder = db.ReferenceProperty(Folder, collection_name="folders")
Run Code Online (Sandbox Code Playgroud)

但是,当尝试定义"文件夹"时,未定义"文件夹",因此失败.

我也尝试在"文件夹"的主声明之外定义"文件夹",如下所示:

class Folder(db.Model):
    id = db.StringProperty()
    name = db.StringProperty()
    created = db.DateTimeProperty(auto_now_add=True)

Folder.folder = db.ReferenceProperty(Folder, collection_name="folders")
Run Code Online (Sandbox Code Playgroud)

但是失败了:AttributeError:'Folder'对象没有属性'folders'

我有点难过.有没有人有这方面的经验,或解决这个问题?

提前致谢.

Ale*_*lli 9

这正是SelfReferenceProperty的用途.