0
0

More than 3 years have passed since last update.

mapメソッドにてカテゴリのidの配列を新規作成

Posted at

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メソッドなどを使った事がある人は当たり前に見えるかもですが、初めて外部サイトなどを見て、使う際の一つの参考になればと思います。
メモ書きなので、簡単ですが、同じような事をする際の参考にしてください。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0