rails 基礎(MVC)の model
rails ではDBを使ってデータ保存をする
model はDBに含まれるテーブルごとに用意される
model をつくるには
rails g model コマンドを使う
構文は
rails g model モデル名
基本的にはこれでOKだけど
model の名前は単数形にすること
そして model を決めるときに
オプションでカラム名とデータ型を決める
例えば
名前なら
name:string
で
メルアドなら
email:string
というかんじ
これで model名を Message としたいのなら
rails g model Message name:string email:string
というかんじになる
これを実行すると
models フォルダの中に
message.rb が作成され
db/migrate フォルダの中に
マイグレーションファイルが作成される
このときに実行したときの時間などがファイル名に書かれる
なお、model の class は
ActiveRecord::Base
というようにクラス継承によりDBのテーブルを使えるようになっている
class CreateMessages < ActiveRecord::Migration def change create_table :messages do |t| t.string :name t.string :email t.timestamps null: false end end end
というコードの場合
< ActiveRecord::Migration
により
ActiveRecord::Migration クラスを継承している
create_table :messages
は
messages テーブルの作成
t.string :name
t.string :email
は
name と email というカラムを
string型で作成という意味になる
t.timestamps null: false
はタイムスタンプの設定で
自動的に作成日時の crated_at
そして
更新日時の updated_at
をテーブルに追加する
この行で
null: false
があるけど
これは null 禁止のこと