未経験からのRuby on Rails|モデル
モデルとは
モデルは、アプリケーションのコントローラーとデータベースの橋渡しを担当します。
アプリケーションで使用するデータを操作するための機能を簡単に使用できます。
モデルの作成
Ruby on Rails には CLI ベースでモデルを作成する機能が存在します。
開発効率が格段に上がるのでこれを使っていきましょう。
rails g model モデル名 or rails generate model モデル名
モデル名は、先頭英数字大文字の単数系で作成してください。
rails g model Book or rails generate model Book
以下ファイルが作成されるかと思います。
- マイグレーションファイル
テーブルデータの初期化の際に参照するファイル
パス: db/migrate/作成日時_create_books.rb - モデルクラス
パス: app/models/book.rb - モデルクラスのテストコード
パス: test/models/book_test.rb - テストデータ作成用のひな型
test/fixtures/books.yml
テーブルデータを定義
テーブルデータを使用する場合は、前項で自動生成されたマイグレーションファイルを編集するのが手っ取り早いです。
前項で自動生成されたマイグレーションファイル
class CreateBooks < ActiveRecord::Migration[5.2] def change create_table :books do |t|
t.timestamps
end
end end
現状だとマイグレーションしても、タイムスタンプ用のカラムしか挿入されません。
今回は books テーブルなので、それに合うカラムデータを試しに挿入してみます。
- title(本のタイトル)
- body(本の情報)
class CreateBooks < ActiveRecord::Migration[5.2] def change create_table :books do |t| t.string :title t.string :body t.timestamps end end end
マイグレーションファイルの編集ができたら実際にテーブルを作成して見ましょう。
以下コマンドでマイグレーションファイルを参照し、テーブルが作成されます。
rails db:migrate
これで作成できたかと思います。
次回実際にモデルを操作して、view に反映させたいと思います。