如何计算Ruby on Rails中布尔列的总和

时间:2013-02-01 16:37:55

标签: ruby-on-rails rails-activerecord

我有一个带有布尔值的列,并希望使用'sum'函数来计算总数。此列用于获得类似于Stack Overflow或reddit的投票计数。

这是我的代码

votes = Vote.all
total = votes.sum(:direction)
puts' ....................' + total.to_s

这是我的错误......

undefined method `+' for #<Vote:0x000000047c9170>

感谢任何帮助

1 个答案:

答案 0 :(得分:8)

布尔值的总和?我只需使用direction=falsedirection=true

计算值
total_down = Vote.where(direction: false).count #down vote
total_up = Vote.where(direction: true).count #up vote
puts "....... #{total_up} .... #{total_down}"