2011-05-18 36 views
1

在我的Rails 3应用程序中,用户可以在论坛中编写消息/帖子。如何在Rails中实现“顶级编写者”表?

我想向用户显示“前写”表,是这样的:

Alex - 14% (i.e. 14% of forum's content was written by Alex) 
Greg - 13% 
Natalie - 10% 
Rachel - 8% 
... 
  1. 你存储在沿有一个数据库中的每个消息中的字符(可能不包括标点符号)的数量其他消息详细信息(并在编辑消息时进行更新)?

  2. 您是否会存储每个用户与其他用户详细信息一起写入的字符数(并且在用户添加/删除/更新信息后更新此数字)?

  3. 你存储在数据库中的字符的总数(即所有号码从2.

  4. 你存储将要显示的百分比(并相应地更新它们)?

    总和
+0

要优化的主要参数是什么?性能?数字的准确性?值的动态(即每日刷新与每秒刷新)。 – berkes 2011-05-18 13:14:14

+0

@ berkes:主要表现。 – 2011-05-19 00:09:13

回答

5

我将侧重于奖励优秀的内容,而不仅仅是内容的度量。Stack Overflow是一个很好的例子---当你的同龄人珍惜你的内容,你得到的回报。

为您的具体问题:

  1. 添加在每个邮件列:内容长度
  2. 上的每个用户添加列:总内容长度
  3. 当您保存一个新的消息,recaculate总含量 - 长度为用户(所有message.content长度的总和)

在这一点上的百分比计算表是相当简单的