maeshimaの日記

メモ書きです

index_by

group_byの隣にあったので。ブロックの戻り値をキーとして、要素を値にしたハッシュを返すのかな。
入れ子になっているかモデルオブジェクト(多分モデルオブジェクトで使う用途)でないと使えない。

index_by() {|elem| ...}

Convert an enumerable to a hash. Examples:

  people.index_by(&:login)
    => { "nextangle" => <Person ...>, "chade-" => <Person ...>, ...}
  people.index_by { |person| "#{person.first_name} #{person.last_name}" }
    => { "Chade- Fowlersburg-e" => <Person ...>, "David Heinemeier Hansson" => <Person ...>, ...}