配列をpriceの昇順でsortしたいとき
array = [
{'id'=> 1, 'price'=> 300},
{'id'=> 2, 'price'=> 100}
]
なんとなくキーを指定したらsortできたようなーと思ったけどできなかった。
array.sort(:price)
#=>ArgumentError (wrong number of arguments (given 1, expected 0))
sort_byでブロックの中でキーを指定する。
array.sort_by { |a| a['price'] }
#=> [{"id"=>2, "price"=>100}, {"id"=>1, "price"=>300}]
##参考