array.group_by {|x| x['type']}
nebo chcete-li klíčové symboly, můžete dokonce
array.group_by {|x| "type_#{x['type']}".to_sym}
Myslím, že to nejlépe vyjadřuje „Takže v podstatě každé pole hashů bude seskupena podle hodnoty klíče typu a poté vráceno jako hash s polem pro každý typ ", i když ponechá :type
pouze klíč ve výstupních hash.