我希望在文本对象和blob之间启用类似一对多关系的内容,以便文本对象(“文章”或同样)具有许多图像和/或视频。我有两种方法可以做到这一点,第一种方法是使用blob列表作为实例变量。它会起作用吗?
class A(search.SearchableModel):
blobs = db.ListProperty(blobstore.BlobReferenceProperty())
优点:只需一节课。可读且易于获取和设置数据。 缺点:缺少blob的额外信息,例如如果我想用描述性的单词标记blob,我仍然需要两个类:
class A(search.SearchableModel):
...
class B(db.Model):
reference=db.ReferenceProperty(A,collection_name='matched_blobs',verbose_name="Title")
blob = blobstore.BlobReferenceProperty()
后面的例子有一个缺点,因为它需要一个引用属性,并引入了两个类,其中问题可以用第一个例子中的类A来解决。后一个解决方案的优点是它清楚地记录了,而blobreferenceproperties的列表属性不是,后来的解决方案我已经实现了,现在我正在考虑使用blob列表而不是引用的集合。它是否重要或两者都同样有效?您能否推荐选择哪种方式?
由于