LoginSignup
1
1

More than 3 years have passed since last update.

Rails 初期データを入れる

Last updated at Posted at 2020-12-03

初期データを入れる
今回は、現場Railsや他の記事を参考に「seed」データを作成していく

似たようなものに「seed-fu」? となるものがあるらしいが
これは、また次回

動作環境

Rails 5.1.6
ruby 2.5.1p57

seedデータとは

アプリケーションでは、使いはじめる時点で初期データを必要とする
テストデータは手動でも作ることができるが、思いの外面倒なので

ある程度一括で作成したい

そこで、初期データ・テスト用データはseedデータ と呼ばれる
DBを作り直す都度、簡単にデータを作成することができる

メリット

seedでは、一度ソースコードを書いてしまえば
コマンドを実行するだけでデータを投入することができる

つまり、都度データを作成する手間や、おこりうる間違いを減らすことができる

実際にデータを流しこんでみる

db/seeds.rb
 User.create!(
   name: 'test',
   email: 'test@mail.com',
   password: 'password',
   password_digest: 'password'
 )

コマンド 実行

 rails db:seed

これで、簡単にテストデータが作成できた

今回は、1人だけだからメリットはあまり感じにくかったが
10、100人単位になってくると恩恵を感じてくるだろう

小技

ループを使って、データを作成する

db/seeds.rb

 100.times do |i|
   User.create!(
    name: 'test#{i}',
    email: 'test#{i}@mail.com',
    password: 'password#{i}',
    password_digest: 'password#i}'
   )
 end

参考記事、書籍

現場Rails
https://qiita.com/takehanKosuke/items/79a66751fe95010ea5ee

1
1
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
1
1