mapメソッドについて調べてみると、
upcaseや変数*2などの例が多く、探すのに苦労したのでメモをします。
まずmapメソッドの例ですが
配列変数.map {|変数名| 具体的な処理 }
mapメソッドを調べるとこのように出てきます。
array = ['a','b','c']
などの配列
array = array.map {|item| item.upcase }
mapメソッドは配列からレシーバの保持する配列などの各要素を1つずつ読み出し新しく配列を作成するメソッドなので、
array.mapでa,b,cの中から 変数itemを使い、文字を大きくするupcaseメソッドを使用し。
["A", "B", "C"]
として新しい配列を作成。
実際にやりたい事
users
categories (titleカラムにてカテゴリの名前を保存)
この二つを1:多の関係で作った際に。
ユーザーに紐付いている、categoriesテーブルのデータの中から、category_idとcategory_titleを
配列として取り出す。 ←がやりたい事でした。
user.categories.map{|category| [category.title, category.id]}
userに紐づく、categoriesの一覧データからmapメソッドで、titleとidの配列を新規に作成
mapメソッドなどを使った事がある人は当たり前に見えるかもですが、初めて外部サイトなどを見て、使う際の一つの参考になればと思います。
メモ書きなので、簡単ですが、同じような事をする際の参考にしてください。