【问题标题】:Storing Blog Comments/Upvotes - Tracking Users?存储博客评论/支持 - 跟踪用户?
【发布时间】:2012-07-18 23:18:12
【问题描述】:

我正在使用 ASP .net MVC3 开发一个博客类型的网站。我试图弄清楚我将如何处理发布的赞成/反对票(我必须知道哪些用户已经在哪里投票以防止垃圾邮件投票)。对博客文章的评论是另一个问题。

到目前为止我的想法(我确信它们离题很远):

投票:

  • 将用户 ID 列表存储在我的博客表的投票字段中。
  • 对于我的 Users 表中的每个用户,存储他们投票的所有 PostID 的列表。

评论:

  • 创建一个单独的 Comments 表,并在该表中包含一个引用父博客文章的字段。
  • 将 CommentID 列表存储在我的 Blogs 表的 Comment 字段中。

我知道还有其他几种方法可以解决这个问题,但我正在尝试进行设置,以便在用户涌入时不必重写整个内容。

【问题讨论】:

  • 对我来说听起来像是 stackoverflow 设计
  • 我不知道 stackoverflow 的设计。你是说设计标签吗?添加了设计标签。谢谢。
  • 我的意思是你的要求听起来就像 stackoverflow 目前有 Up/Down 投票并通过用户 ID 等记住......

标签: sql asp.net-mvc-3 database-design schema


【解决方案1】:

您可能想考虑创建一个投票表,例如 用户|帖子|类型? 约翰|43 |向上 玛丽|43 |向下

使 User + Post 成为复合主键,从而通过两者进行索引...然后您可以轻松检查用户是否已经为帖子投票...您还可以按用户或帖子创建附加索引如果需要...

如果在 blogs 表中包含“Current Ups and Current Downs”也是一个好主意,这样您就不必每次都计算它们......

【讨论】:

  • 非常有见地,谢谢。我计算出 cmets 部分,想知道我将如何进行投票。这似乎是一个可靠的实现。
猜你喜欢
  • 1970-01-01
  • 2021-04-16
  • 1970-01-01
  • 1970-01-01
  • 2018-03-08
  • 2013-02-22
  • 1970-01-01
  • 2013-11-21
  • 2013-04-16
相关资源
最近更新 更多