2017-10-17 51 views
-3

這是我的尷尬數據庫看起來像atm。我想嘗試根據年齡對嵌套散列進行排序。我環顧四周,所有我能找到的是如何對哈希內部的哈希進行排序,但是當嵌套哈希位於數組內部時不會。我確定有一些簡單的方法來改變結構或按照它的方式進行分類。試圖對哈希內的數組內的哈希進行排序

{ :room1 => [{ 
    :fred => { :name => "Fred", :age => 23 }, 
    :joan => { :name => "Joan", :age => 18 }, 
    :pete => { :name => "Pete", :age => 54 } 
}], 
:room2 => [{ 
    :jan => { :name => "jan", :age => 2 }, 
    :eric => { :name => "eric", :age => 3 }, 
    :stan => { :name => "stan", :age => 1 } 
}]} 

在此先感謝! 順便說一句,這是我在這裏的第一個問題。要溫柔^^。

回答

0

試試這個

h.each do |k, v| 
    h[k] = v.first.sort_by { |_, person| person[:age] }.to_h 
end