本投稿の目的
・Railsについての議事録です。学習に使った教材
Udemyの以下2つの教材を参考にまとめました。 ・["はじめてのRuby on Rails入門-RubyとRailsを基礎から学びWebアプリケーションをネットに公開しよう"](https://www.udemy.com/course/the-ultimate-ruby-on-rails-bootcamp/) ・["フルスタックエンジニアが教える 即戦力Railsエンジニア養成講座"](https://www.udemy.com/course/rails-kj/)○seeds.rbについて
・新規投稿view実装前に初期データを投入する際に使用 ・rails db consoleに比べて,大量のデータを実装する際に便利 ・(基本的には,rails console からの作成が一般的)○seeds.rbの記述方法
・プロジェクト名/db/seeds.erbにコードを記述
・今回は,数字の繰り返しパターンのユーザーデータを50個dbへ反映させる
qiita.rb
if Rails.env == 'development'
(1..50).each do |i|
model名.create(name: "ユーザー#{i}", title: "タイトル#{i}", body:"本文#{i}")
end
end
【解説】
Rails.env == 'development'
・railsの実行環境が開発モードかどうかを判定
・env は"development(開発)" "テスト(test)" "production(本番)"の3つが存在
model名.cretate(column名: 値,column名: 値)
・データベースに値を保存するコード
・model名
は単数系で記述すること
【createメソッドについて】
以下のようにすることで縦に並べて記述が可能
qiita.rb
model名.create([
{ name: '値1' },
{ name: '値2' },
{ name: '値3' },
{ name: '値4' },
{ name: '値5' },
{ name: '値6' }
])
end
【解説】
・配列の中にハッシュ形式で記述する
・まとめて複数のデータを保存が可能
○seeds.rbの実行
rails db:seed
・seeds.rbに記載した情報をdbに反映させるためのコード