我想做这样的事情:
class Author(db.Model):
influencedBy = db.ListProperty(db.SelfReferenceProperty())
influenced = db.ListProperty(db.SelfReferenceProperty())
我知道我可以使用self.author_set来获得反向关系,但是我需要将多个Author对象添加到受影响和受影响的对象中。
答案 0 :(得分:1)
不幸的是,你不能做你的建议。你可能已经意识到你会得到ValueError: Item type ReferenceProperty is not acceptable
你可以做influencedBy = db.ListProperty(db.Key)
或者如果您使用了ndb influencedBy = ndb.KeyProperty(kind=Author,repeated=True)
需要考虑的事项是influencedBy
和influenced
中有多少成员。如果可能存在大量数据,则可能会遇到实体大小问题。如果有可能,那么您需要考虑使用单独的实体来记录影响力。