ruby on rails -我如何在几列中获得值的总汇总数?



假设存在UserCommunity

Community由User创建,user_id。
社区也有一些喜欢社区的用户。

假设

有这些社区。()里面的数字是喜欢这个社区的用户的数量。

  • 社区A(17),社区所有者是user_id '2'
  • 社区B(35),社区所有者是user_id '1'
  • 社区C(8),社区所有者是user_id '2'

我想得到喜欢用户'2'他的社区的用户总数。这里应该是25 (17 + 8)

我怎样才能得到这个?

应该是这样的?cached_votes_up有喜欢该社区的用户数。

@user = User.find(2)
@communities = Community.find(@user).
@user.summarized_number = @communities.cached_votes_up.count
@user.save

您可以使用ActiveRecord:: calculation# sum方法:

@user.summarized_number = Community.sum(:cached_votes_up, :conditions => ["user_id = ?", @user.id])

相关内容

  • 没有找到相关文章

最新更新