2024-04-24 19:05:33 发布
网友
我想这样做:
class Author(db.Model): influencedBy = db.ListProperty(db.SelfReferenceProperty()) influenced = db.ListProperty(db.SelfReferenceProperty())
我知道我可以用self.author\u集为了得到相反的关系,我需要向infected和influencedBy添加多个Author对象。你知道吗
不幸的是你不能按你的建议做。正如您可能已经意识到的,您将得到ValueError: Item type ReferenceProperty is not acceptable
ValueError: Item type ReferenceProperty is not acceptable
你可以做influencedBy = db.ListProperty(db.Key) 或者如果您使用ndb influencedBy = ndb.KeyProperty(kind=Author,repeated=True)
influencedBy = db.ListProperty(db.Key)
influencedBy = ndb.KeyProperty(kind=Author,repeated=True)
需要考虑的一点是influencedBy和influenced中可能有多少成员。如果可能存在大量数据,则可能会遇到实体大小问题。如果这是一种可能性,那么你需要考虑使用一个单独的实体来记录影响。你知道吗
influencedBy
influenced
不幸的是你不能按你的建议做。正如您可能已经意识到的,您将得到
ValueError: Item type ReferenceProperty is not acceptable
你可以做
influencedBy = db.ListProperty(db.Key)
或者如果您使用ndbinfluencedBy = ndb.KeyProperty(kind=Author,repeated=True)
需要考虑的一点是
influencedBy
和influenced
中可能有多少成员。如果可能存在大量数据,则可能会遇到实体大小问题。如果这是一种可能性,那么你需要考虑使用一个单独的实体来记录影响。你知道吗相关问题 更多 >
编程相关推荐