gem ancestry でカテゴリーデータを用意
こんにちは、ぐっちと申します。
SEEDファイルをファイル名指定で実行できる様になり、ようやくカテゴリーデータの用意に入りました。
category.rbファイルを作成し、テーブルに登録するデータを記述します。
ancestry では、.childrenと記述する事で親子関係が作成されます。
例)おもちゃカテゴリーがあり、男の子向け・女の子向け、男の子向けからプラモデル・ラジコンがあった場合
toys = Category.create(name: "おもちゃ")
boy = toys.children.create(name: "男の子向け")
boy.children.create([{name: "プラモデル"},{name: "ラジコン"}])
ledy = toys.children.create(name: "女の子向け、")
と記述する事で
この様なレコードが出来、ancestryカラムに自動で親のIDが入ります。
孫カテゴリーには 1/1 と親/子のIDが登録されます。
これによって1つのテーブルで、親・子・孫データが管理できるというわけです。
そしてひたすらカテゴリーデータを記述して、合計1328レコード分のデータが出来ました。カテゴリーデータ多すぎます……
大変でしたが、また1つ便利なgemの使い方が勉強出来ました。
ここまで読んでくださり、ありがとうございました。
ツイッターで日々の学習をつぶやいています