![](/img/trans.png)
[英]Ruby on Rails - Get array of values from array of hash with particular order of existing keys
[英]Rails order hash by values and array
我有一组用户,还有一组ID。 我需要使用{name => id}创建哈希,但要使用ID数组的顺序。 例如,当我写:
keys = [5, 3, 2, 4, 1]
users = User.all.where(id: keys).pluck(:name, :id).to_h
返回我{"User_1"=>2, "User_2"=>3, "User_3"=>4, "User_4"=>5, "User_0"=>1}
但是我需要得到这样的东西:
{"User_4"=>5, "User_2"=>3, "User_1"=>2, "User_3"=>4, "User_0"=>1}
是否有机会在哪里进行这样的哈希运算?
您从数据库中获得的用户数组按updated_at
列排序。 尝试这个:
users = User.where(id: keys).order(id: :desc).pluck(:name, :id).to_h
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.