2010-04-03 8 views
2

App Engine (Python)의 ReferencePropertys에 약간의 문제가 있습니다.Google App Engine의 자체 참조 참조 속성

재미있는 점은 폴더/파일 시스템을 모델링하려고하지만 폴더를 참조 폴더로 가져 오는 데 어려움이 있습니다.

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

하지만 그 "폴더"때 "폴더"를 정의하려고 정의하지 않는 한 실패

내 첫 번째 시도는이이었다.

나는 또한과 같이, "폴더"에 대한 주요 선언의 외부 "폴더"정의 시도했다 :

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") 

을하지만 그와 함께 실패합니다 AttributeError : '폴더'개체가 어떤 속성 '폴더가 없습니다 '

나는 다소 혼란 스럽다. 누구나 이것에 대한 경험이 있거나이 문제에 대한 해결책이 있습니까?

미리 감사드립니다. SelfReferenceProperty가 무엇인지 정확히

class FolderChild(db.Model): 
    parent = db.ReferenceProperty(Folder) 
    child = db.ReferenceProperty(Folder, collection_name="children") 

답변

9

:

+0

항상 설명서를 읽는 데 필요한 인수입니다. 감사! –

+0

아 나는 이것을 잊었다. 잘 했어 :) –

0

당신은 FolderChild 같은 것을라는 두 가지를 연결하는 별도의 모델을 만들 수 있습니다.