Ruby on Railsでテストデータを作成してみる

前回からの続きです。前回はControllerクラスを作成して、HTMLの画面に値を出力させるところまでご紹介したと思いますが、今回はHTMLの画面に表示させるためのデータをDBに登録していきたいと思います。

seed.rbを使用してテストデータを作成

データを登録するには、SQLでINSERT文を使用してデータを登録していくと思うのですが、今回はプロジェクト内にあるseed.rbというファイルを使用してテストデータを作成していきたいと思います。seed.rbファイルを使用すればDBに初期データをあらかじめ登録することができます。

テーブルの詳細を確認

データを作成するにあたりテーブルの詳細を確認しましょう。
まずは、下記コマンドでsqliteを起動します。

次に下記コマンドでテーブルの中のカラムを確認しましょう。

私の場合下記のように表示されます。

今回はtasksテーブルにデータを登録するのでtasksテーブルのカラムを確認します。
ついでに既存のデータがあるかも確認しておきます。確認するには下記SELECT文を実行します。

既に前回作成したデータが1件ありました。

 

seed.rbファイルにプログラムを記載

テーブルを構成するカラムが確認できたら下記のようにseed.rbファイルにプログラムを記載します。

簡単に説明すると、処理としてはtasksという変数に登録するデータを設定して、「ActiveRecord::Base.transaction do」で1件ずつデータを登録していっているイメージです。created_atとupdated_atは自動で登録した日時が入ります。

データ登録実行

下記コマンドでseed.rbに記載したプログラムを実行しましょう。

データ確認

下記コマンドでsqlite3を起動し、SELECT文で結果を確認してみます。

下記のようにseed.rbで設定したデータが反映されていれば成功です。

 

次回はDBからデータを取得していけたらなと思います。
ありがとうございました。


--------------------------
システム開発のご要望・ご相談はこちらから

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です