Google app engine 应用程序引擎建议的Polymodel
我正在为一个发布系统设计一个模型,其中一个条目包含一个带有或不带注释的图像。用户可以作为评论或图像条目对其进行回复 由于ImageEntry可以有更多的属性,我用Polymodel提出了这个设计。不确定这是否是最好的方法。就存储而言,CommentEntry是否小于ImageEntry 任何建议都很好Google app engine 应用程序引擎建议的Polymodel,google-app-engine,model,google-cloud-datastore,Google App Engine,Model,Google Cloud Datastore,我正在为一个发布系统设计一个模型,其中一个条目包含一个带有或不带注释的图像。用户可以作为评论或图像条目对其进行回复 由于ImageEntry可以有更多的属性,我用Polymodel提出了这个设计。不确定这是否是最好的方法。就存储而言,CommentEntry是否小于ImageEntry 任何建议都很好 class Entry(polymodel.PolyModel): comment = db.TextProperty() reply_to = db.SelfReference
class Entry(polymodel.PolyModel):
comment = db.TextProperty()
reply_to = db.SelfReferenceProperty() # reference to the entry
created_at = properties.DateTimeProperty(auto_now_add=True)
updated_at = properties.DateTimeProperty(auto_now=True)
class CommentEntry(Entry):
created_by = db.ReferenceProperty(User, collection_name='comment_entries')
class ImageEntry(Entry):
created_by = db.ReferenceProperty(User, collection_name='image_entries')
image_url = db.LinkProperty(indexed=False)
slug = db.StringProperty(indexed=False)
该模型可以正常工作,是的,如果ImageEntry具有图像URL和/或slug,则CommentEntry将小于来自同一用户的ImageEntry 然而,我想通过把 创建人、图像、url,然后插入条目并删除 包括CommentEntry和ImageEntry。自从 , 以及, 您只需在填充图像url和slug属性时支付它们的费用
用于图像条目。此模型可以正常工作,是的,如果ImageEntry具有图像URL和/或slug,则CommentEntry将小于来自同一用户的ImageEntry 然而,我想通过把 创建人、图像、url,然后插入条目并删除 包括CommentEntry和ImageEntry。自从 , 以及, 您只需在填充图像url和slug属性时支付它们的费用
实际上,我还有几个ImageEntry的属性,但只有一个条目肯定更简单。谢谢你澄清这一点。实际上,我还有几个ImageEntry属性,但只有Entry肯定更简单。谢谢你澄清这一点。