validationについて(随時更新)
はじめに
今回はvalidationについて学んだことをまとめていきたいと思います。
validationとは?
DBにデータを保存する際、Rails側でデータが適当なものか検証(validate)することです。
RailsとDBの間にいる門番(Rails側)みたいなイメージです。
基本構文
modelに書きます。
「validates」メソッドを使用します。
validates :カラム名, ヘルパー: オプション #カラムはシンボルで表します。
各ヘルパーについて
presence
カラムが空白でないかを検証するのに使います。
オプションで「true」を与えることで、カラム値が空白の場合、falseを返します。
validates :name, presence: ture
uniqueness
カラム値が一意かを検証するのに使います。
オプションで「true」を与えることで、既に同じカラム値がDBに登録されている場合、falseを返します。
validates :email, uniqueness: true
format
カラム値と正規表現が合致しているかを検証するのに使います。
オプションは「with:」を使用します。
validates :email, format: {with: 正規表現}
length
カラム値の長さを検証します。
オプションは以下のようになります。
maximum:
最大値を指定します。
validates :name, length: { maximum: 30 }
minimum:
最小値を指定します。
validates :name, length: { minimum: 10 }
in:
値の長さの範囲を指定します。
validates :name, length: { in: 1..5 }
is:
値の長さを指定します。
validates :name, length: { is: 4 }