入力内容のチェック。
まずは何処に書くかっていうところですが、モデル側でチェックをするとのことで、app/models/モデル名.rbを編集する。
class Schedule < ActiveRecord::Base def validate unless attribute_present?('title') errors.add('title', '入力されていません') end end end
こんな感じ。
ここでは単にメソッドを定義を行うだけで、に実行のタイミングを指定することはない。データ保存時に自動で呼ばれるらしい。
validateメソッド以外にはvalidate_on_create、validate_on_updateメソッドがあり、機能はその名の通り。その他にもこんなにもある。
attribute_present?メソッドは引数で指定した列の値が空白かどうかを返すメソッド。
errors.addはエラーを記録している。ここで記録した内容が
エラー発生時に画面上にはこんな感じに表示される。