0

我想在 ruby​​ on rails 中创建一个图表,例如“随着时间的推移累积喜欢的数量”。我需要做一些事情,比如让基础喜欢:

base_likes = Like.find :all, :conditions => ["created_at < ?", from_date]

并在数组中获取每天的点赞数:

[3, 0, 10, 12, 0, 24]

然后遍历每天的点赞数,包括基本点赞数,得到一个数组,如:

[3, 3, 13, 25, 25, 49]

我想知道是否有一种神奇的红宝石方法?!

谢谢

4

1 回答 1

1

要从数据库中检索信息,我首先要:

hash = Like.count(:group => "date(created_at)")

但这只会提供这里一直喜欢的日子,因此填补空白可能会很痛苦。

否则,看这里,你可以每天创建你喜欢的数组。

然后为了获得累积的喜欢,我会这样做:

ary = [3, 0, 10, 12, 0, 24]
ary.each_with_index.map {|e,i| ary[0..i].inject(&:+)}
于 2011-11-01T09:12:10.313 回答