seedデータの作成
fakerをインストール
gem 'faker'
db/seed.rbの記述
今回はFaker::Artist
で実在のアーティスト名を生成。
ほかにもFaker::Color
やFaker::Food
など汎用性のあるものから、Faker::JapaneseMedia::StudioGhibli
とかいうマニアックなものまで。
# 10人のartistとそれに関連づく20件の記事を生成するとき require 'faker' 10.times do |n| name = Faker::Artist.name Artist.create!(name: name) end 20.times do |i| Article.create!( artist: Artist.offset(rand(Artist.count)).first, title: "title_#{i}", body: "body_#{i}" ) end
ちなみにアーティストIDをランダムで設定するところはArtist.all.sample.id
とするよりパフォーマンスがいい。
offset
は引数の数字からレコード取得を開始するので全件取得しないため。