RailsでFakerを使ってダミーのユーザーを作成する
自分が忘れないためにメモしてます。
require 'faker'
# メインのサンプルユーザーを1人作成する
User.create!(firstname: "Kako",
lastname: "Ogura",
email: "example@railstutorial.org",
password: "foobar",
password_confirmation: "foobar")
# 追加のユーザーをまとめて生成する
99.times do |n|
firstname = Faker::Name.first_name
lastname = Faker::Name.last_name
email = Faker::Internet.email
password = "password"
User.create!(firstname: firstname,
lastname: lastname,
email: email,
password: password,
password_confirmation: password)
end
これで
$ rails db:migrate:reset
$ rails db:seed
すると
ActiveRecord::RecordInvalid: Validation failed: Email has already been taken
なぜ?????
そこからデータベースを削除したり、公式ドキュメントみたりいろいろ探索したところ、
そもそもサーバーを起動したままだから重くなってるのではないかと思い、一旦サーバーを落として実行すると、、、