你好我是Ruby on Rails
的新手。我使用设备创建了用户,在创建配置文件时,用户输入的数字字段限制为5个数字。现在我需要从所有用户那里获得最常见的数字。我怎么能这样做?
我想在管理员控制器中显示最常见的号码,请帮忙。
答案 0 :(得分:1)
您可以通过
获取数字字段数组array = User.all.map(&:numeric_field) # assuming there is a numeric_field column
然后,您可以使用此帖子引用的几种不同方法获取最常见的数字(称为“模式”):Ruby: How to find item in array which has the most occurrences?
如果你有很多用户,这种方法会占用内存,在这种情况下你可以分批进行操作:
array = []
User.find_in_batches do |users|
array += users.map(&:numeric_field)
end
然后像以前一样使用array
。