「バリデーション」って何??
バリデーションとは、データの登録をする際に一定の制約をかけることを言います。
例えば、Twitterでアカウント名を空欄にした状態で、アカウントを作成することはできないですよね?
何でもかんでもデータを登録できるようにしてしまうと、アプリの使用状況がめちゃくちゃになってしまうので、それを防ぐために登録できるデータの制限をかけることをバリデーションと呼びます。
このバリデーションを適用させるためには、サーバーのモデル内に「validates(バリデーツ)メソッド」と呼ばれるメソッドを記述します。
ちなみにモデルというのは、アプリのサーバー内でデータベースとデータのやり取りをする機能のことです。
データの更新や登録も行うため、この中にバリデーションの記述をしていきます。
具体的な記述方法は下記の通りです。
validates: カラム名,バリデーションの種類
カラム名とは、大きなデータを構成している一つ一つのデータ名のことです。
例えば、Twitterのユーザーに関するデータは「name(アカウント名)」「password(パスワード)」「email(メールアドレス)」といったデータから構成されています。
この構成している一つ一つデータ名のことを、カラム名と呼んでいます。
以上の内容を踏まえて、仮にTwitterのユーザーの中の「name」にバリデーションを適用させたい場合の記述は、下記のようになります。
validates: name
続いて、バリデーションの種類です。
バリデーションの種類には、代表的なものだとpresence: true(空欄の場合は登録できない)という種類があります。
つまり、nameカラムが空欄だと、データの登録ができないようにするバリデーションの記述は以下のようになります。
validates: name, presence: true
バリデーションの種類には他にも、length: {maximum: 6}(文字数が6文字以上の場合は登録できない)といったものもあり、用途によって使い分ける必要があります。
バリデーションの設定は、Webアプリケーションを作成する上で必須の知識なので、ぜひ覚えておきましょう。