Railsを学習していると、validatesというメソッドを目にすることになると思います。Rails(以下Rails)におけるvalidatesメソッドについて、Rails初心者の人でもわかるように丁寧に解説します。本記事で学習できる内容は、Railsのvalidatesとは何か・validatesの書き方と使い方についてです。全ての項目で具体的なソースコードで解説しているので、わかりやすい内容となっております。validatsには多くの種類があります。本記事では、よく使われる重要なvalidatesもいくつか紹介します。本記事を読むだけでRailsのvalidatesの基礎をマスターできること間違いなしです。最後までお読みください。使うvalidatesの種類validatesとは?まず、validatesとは何かについて述べます。validatesはメソッドの1つで、バリデーションを設定する時に使用します。バリデーションとは何なのでしょうか?例を挙げて解説します。日用品の情報を扱うデータベースのテーブルを考えてみます。設定されているとします。ここで、テーブルのレコード(行)では、必ずデータの型(整数や文字列など)が決まっています。レコードをテーブルに保存する時には、値が正しいかどうかの検証が必要になります。この検証を簡単にこなすのがRailsに用意されたバリデーション(validatesメソッド)です。「フォームなどから入力された値を調べ、値が適切かどうかを調べて間違っていたらエラーメッセージを出す」という一連の流れは以下のようになります。(電話番号を例に考えてみました)図にするとわかりやすいのではないでしょうか?validatesの役割が大体理解できたでしょう。次からは、validatesの書き方や具体例を解説します。validatesの書き方と具体例では、validatesメソッドの書き方と具体例を学習していきましょう。validatesメソッドの引数には、モデルの属性名の前に「:」を記述します。true」を並べれば、その種類のバリデーションが行われます。属性名もバリデーションの種類も複数並べることができます。※validatesメソッドは、Railsアプリケーションフォルダのapp/models/◯◯.rbにソースコードを記述します。true」を指定することで背番号と名前に「空を禁止(値を必ず入れなければいけない)」という制限を加えた。trueにより、フォームなどで背番号(number)と名前(name)を空欄にすると、エラーになるということです。}」とすると、バリデーションごとにオプションを指定できます。}※「名前(name)属性に20文字以下(最大20文字)」という制限を加えた。以上がvalidatesの基本的な書き方です。validatesメソッドにはpresenceやlengthなどの他にも多くの種類があります。以下からは、とてもよく使用するvalidatesの種類を紹介していきます。上記で紹介したvalidatesの他に、どんな種類のvalidatesがあるのでしょうか?ここでは、とてもよく使うvalidatesの種類をいくつか紹介します。numericalityvalidatesの種類の1つにnumericalityというのがあります。numericalityは、整数であるかどうかや、指定値以上(以下・未満・等しい)かどうかなどを検証できます。背番号(number)という属性に、「1以上100未満の整数」という制限を加えてみます。true」を使うと、「整数のみ」という制限を加えることができます。uniquenessuniquenessは、重複を禁止することができます。背番号(number)という属性で、数字の重複を禁止するためのソースコードを記述してみます。true背番号が10のユーザーが2人いては困る場合にはuniquenessを使いましょう。formatfaromatは、半角英数字などの指定ができます。名前(name)属性に、半角英数字のみ、文字列の先頭はアルファベットという制限を加えてみます。}※windowsでは、\は¥と入力してください。※formatの書き方についてはプログラミング言語Rubyの正規表現の知識が必要です。本記事ではRubyの正規表現については割愛させて頂きます。いかがでしたか?Railsのvalidatesについて理解できましたか?Railsでアプリケーションを作成するときには、必ずと言っていいほどvalidatesメソッドを使用することになるでしょう。validatesの書き方を忘れた時は、ぜひ本記事でvalidatesを見直してください。初心者向けの人工知能と機械学習のコース。利用規約お問い合わせ。