LoginSignup
0
0

More than 3 years have passed since last update.

RailsでFakerを使ったエラー処理

Posted at

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

なぜ?????

そこからデータベースを削除したり、公式ドキュメントみたりいろいろ探索したところ、

そもそもサーバーを起動したままだから重くなってるのではないかと思い、一旦サーバーを落として実行すると、、、

スクリーンショット 2020-09-15 16.39.53.png

できた!

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