-1

我需要为我的应用程序设置一个简单的投票系统。我的应用程序由发布的文章和评论组成。我想为文章和评论添加投票能力,同时能够根据最高投票等对评论进行排序。

我有以下限制,即由于应用程序需要用户登录 - 只有登录用户才能投票,其次,用户只能对一个项目投票一次。用户可以支持或反对或取消他们所做的投票。

什么是一个像样的桌子设计,另外我需要解决方案是可扩展的。感谢您的建议

4

1 回答 1

2

我想我会在users和表之间使用连接articles表:

users_articles
  - article_id
  - user_id
  - score
  - date

带有以下注释:

  • article_id是获得上/下投票的文章的外键
  • user_id是投票用户的外键
  • score是 +1 或 -1,取决于投票
  • 主键在两article_id, user_id列上。
  • 用户对文章投票意味着在此表中插入一行;取消投票意味着删除该行(如果您想跟踪用户投票的事实,则设置为 0 分)


那是对文章的投票。
我会users_comments为评论投票做另一张桌子。

于 2011-03-26T12:38:10.090 回答