【发布时间】:2011-10-09 16:11:56
【问题描述】:
我的网站将有可能对它们进行评分并离开 cmets 的新闻。每个用户只能对一条新闻进行一次评分,并且只能留下一条评论。同时,我应该知道哪个用户对新闻进行了评分,谁发表了评论。
如何组织这样的数据库?
我想到了以下结构:
class News(db.Model):
news = db.TextProperty()
added = db.DateTimeProperty(auto_now_add=True)
rating = db.ReferenceProperty(NewsRatings)
comments = db.ReferenceProperty(NewsComments)
added = db.DateTimeProperty(auto_now_add=True)
class NewsRatings(db.Model):
user = db.ReferenceProperty(Users)
rating = db.IntegerProperty()
added = db.DateTimeProperty(auto_now_add=True)
class NewsComments(db.Model):
user = db.ReferenceProperty(Users)
comment = db.TextProperty()
added = db.DateTimeProperty(auto_now_add=True)
class Users(db.Model):
user = db.IntegerProperty()
这是正确的方法吗?我会知道谁对特定新闻发表了特定评论吗?
【问题讨论】:
-
它是一个对象模型 - 在类名中去掉复数。
标签: google-app-engine google-cloud-datastore