LoginSignup
32
26

More than 3 years have passed since last update.

seeds.rbの使い方

Last updated at Posted at 2020-04-30

seeds.rbとは

初期データを生成してくれるファイルのこと。
このファイルにデータを生成するコードを書いておくだけで、アプリにデータを備えさせることができます。
簡単にテストデータを作ったりできます。

使い方

1.自分が用意したいデータをファイル内でcreateする。

db/seed.rb

#通常の場合
User.create(name: "tanaka")
User.create(name: "sato")

#配列の場合
users = User.create([{name: "tanaka"}, {name: "sato"}])

#大量のテストデータの場合
100.times do |n|
  User.create(title: "test{n}人目", content:"test!#{n}回目")
end

2.seedファイルを実行する

$ rails db:seed

おまけ

実際に存在しそうなデータを生成してくるgem(Faker)があるので一応載せておきます。

1.Gemfileに以下を追記

gem 'faker'

こちらも忘れず実行してください。

$ bundle install

2.seeds.rbを以下のように記述する。

db/seed.rb
100.times do |n|
  name = Faker::Name.name
  email = Faker::Internet.email
  content = "test"

  User.create(
    name: name,
    email: email,
    content: content
  )
end

3.seedファイルを実行する。

$ rails db:seed

※Fakerの使い方一覧は以下の表参照。

種類 役割
Faker::Name.name 名前
Faker::Internet.email メールアドレス
Faker::Address.city 都市の名前
Faker::Food.ingredient 食べ物の名前

参考

32
26
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
32
26