Open4
Rails学習メモ
ActiveRecord
Active Recordとは、MVCで言うところのM、つまりモデルに相当するものであり、ビジネスデータとビジネスロジックを表すシステムの階層です。Active Recordは、データベースに恒久的に保存される必要のあるビジネスオブジェクトの作成と利用を円滑に行なえるようにします。Active Recordは、ORM(オブジェクト/リレーショナルマッピング)システムに記述されている「Active Recordパターン」を実装したものであり、このパターンと同じ名前が付けられています。
Create
user = User.create(name: 'Hoge', email: 'hoge@example.com)
または、オブジェクトを初期化してからsave
する
user = User.new(name: 'Hoge', email: 'hoge@example.com')
user.save
Read
User.find(id) #idで検索する
User.first # 最初のレコードを取得する
User.all # すべてのレコードを取得する
Update
user.update(name: 'fuga')
または、オブジェクトの値を変更してからsave
する
user.name = 'Fuga'
user.save
updateするとupdate_at
が自動的に更新される。
Delete
user.destroy
Validation
オブジェクトが有効かどうかを確認する
user.valid?
バリデーションの設定
validates :name, [validation]
バリデーションヘルパー
いくつかのバリデーションがすでに用意されている
必須である
validates :name, presense: true
正規表現に一致する(しない)
validates :name, format: { with: /<正規表現>/ } # 一致する
validates :name, format: { without: /<正規表現>/ } # 一致しない
一意にする
validates :email, uniqueness: true
※MySQLの場合、大文字小文字はデフォルトで区別される