我有一个模型snippets
,用户可以在其中发布一个代码段。他们发布的片段可以使用acts_as_votable
gem进行投票。这是完美的,当用户投票时,该片段的投票计数增加一个。
虽然,我想知道有没有办法获得他们发布的一个用户的片段的总票数?
因此,如果用户发布了4个片段,每个片段的值为2票,那么我试图仅获得其片段的总值 - 即8。
此代码用于获取单个代码段的投票:
<%= @snippet.weighted_score %>
虽然我怎样才能获得一个用户发布片段的总价值?
答案 0 :(得分:0)
您可以通过@user.votes
查看acts_as_voter
文档here,它已经做了你想要的任何事情。
答案 1 :(得分:0)
我假设您设置了user
has_many
snippets
关系?如果是这种情况,您应该能够获得与用户关联的所有片段并总结votes_for
。
user.snippets.sum { |s| s.votes_for.size }
编辑:或者在您的情况下:
user.snippets.sum { |s| s.weighted_score }
参考文献: