devise を導入⑤
開発環境で画面からデータを作成するのは大変なので、seed を使ってデータを作成する。
以下のコードを seed.rb に追加する。
user_attributes = (1..50).map do |n|
{
first_name: "test#{n}",
last_name: "test#{n}",
email: "test#{n}@example.com",
password: 'password',
password_confirmation: 'password'
}
end
user_attributes.each do |user_attribute|
User.find_or_create_by(email: user_attribute[:email]) do |user|
user.first_name = user_attribute[:first_name]
user.last_name = user_attribute[:last_name]
user.password = user_attribute[:password]
user.password_confirmation = user_attribute[:password_confirmation]
end
end
上記のコードでは50件のデータを作成できる。
以下のコードの 50 という部分を変更すると作成するデータの件数を調整できる。
(1..50).map do |n|
rails db:seed というコマンドを実行し、データを作成する。
作成できたかどうかは rails c で確認する。以下のコマンドを実行する。
rails c
User.count
上記のコードを実行し、指定した件数以上のデータが作成されていれば成功。
find_or_create_by メソッドを使用しているため、何度 rails db:seed を実行しても同じ結果となる。
この記事が気に入ったらサポートをしてみませんか?