大佬教程收集整理的这篇文章主要介绍了ruby-on-rails – mongoid group_by返回一个hashmap而不是一个哈希数组,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
Product.group_by {|p| p.user_id }
返回映射数组
result = Product.group_by {|p| p.user_id } => [ {"12354asdf" => [product1,product2,product3]},{"safakjgh314" => [product4,product5,product6]} ]
我目前正在运行以下查询的结果,以实现映射的单个哈希
result.reduce Hash.new,:merge
有没有更有效的方法来做到这一点?
编辑***
在分组之后,我宁愿使用一个有意义的可枚举操作集合.
result.each do |k v| k v end
而不是
result.each do |h| h.keys.first,h.values.first end
它目前返回的例子.
[ {user_object => [item1,item2,item3] },{user2_object => [item1,item3] } ]
result.map(&:first).each do |k,v| puts k puts v.count end # 12354asdf # 3 # safakjgh314 # 3
以上是大佬教程为你收集整理的ruby-on-rails – mongoid group_by返回一个hashmap而不是一个哈希数组全部内容,希望文章能够帮你解决ruby-on-rails – mongoid group_by返回一个hashmap而不是一个哈希数组所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。