2012-07-04 18 views
1

我願做這樣的事情:自列表的Python模型引用

class Author(db.Model): 
    influencedBy = db.ListProperty(db.SelfReferenceProperty()) 
    influenced = db.ListProperty(db.SelfReferenceProperty()) 

我知道我可以使用self.author_set獲得反向關係,但我需要添加多個作者對象受到影響和影響。

+0

是的但是,這是什麼問題? –

回答

1

不幸的是,你不能做你的建議。正如你可能已經意識到,你會得到ValueError: Item type ReferenceProperty is not acceptable

你可以做influencedBy = db.ListProperty(db.Key) 或者,如果你使用的NDB influencedBy = ndb.KeyProperty(kind=Author,repeated=True)

一旦要考慮的事情是有多少成員可能是influencedByinfluenced。如果可能存在大量數字,那麼您可能遇到實體大小問題。如果這是一種可能性,那麼您需要考慮使用單獨的實體來記錄影響力。