BackEnd

Railsのバリデーション

投稿日:

はじめに

今回はRailsのActiveRecordのバリデーションについて簡単にまとめます。

基本的なバリデーション

ある属性に必ず値が入っていること、何文字以内であることなど、一つの属性に対するバリデーションは下記のように行えます。

 

EachValidatorクラス

EachValidatorクラスを継承したクラスを定義すると、一つの属性に対して新しい検証ルールを追加することができます。

バリデータの適用は下記のとおりです。
 

 

Validatorクラス

Validatorクラスを継承したクラスを定義すると、複数の属性が絡むような複雑な検証ルールを定義できます。

バリデータの適用は下記のとおりです。
 

 

autoload_pathsの編集

今回はバリデータクラスをlib/validator/以下のディレクトリに配置しました。
このディレクトリはそのままでは読み込まれないので、config/application.rbを修正します。

 

さいごに

RailsのActiveRcoredのバリデーションについて紹介しました。

blog-page_footer_336




blog-page_footer_336




-BackEnd
-

執筆者:


comment

メールアドレスが公開されることはありません。

CAPTCHA


関連記事

laravel logo

Laravelのバリデーションtips

1 はじめに2 配列のバリデーションでRule::uniqueを使う時のカラム名を指定したい3 配列バリデーションのエラーメッセージ制御4 カスタムバリデーションで、他の属性名を参照したい5 番外:複 ...

rails

Ruby、Railsの時間に関するメソッドを使用してみた

はじめに 普段PHPのお仕事をしています、tonnyです。 半年程前からRuby on Railsの勉強を始めました。 今回はよく使う時間に関するメソッドついてまとめたいと思います。 目次 1 はじめ ...

rails

Railsでの非同期処理とDelayed Job

1 はじめに2 Active Job2.1 Active Jobの役割2.2 ジョブを作成する2.3 ジョブをキューに登録する2.4 コールバック2.5 例外3 Delayed Job3.1 設定3. ...

rails

Railsで複合主キーのテーブルを扱う

1 はじめに1.1 前提条件2 実装例2.1 config2.2 マイグレーション2.3 モデル3 さいごに はじめに RailsでWebサービスを開発する際のDB設計では基本的にidが主キーになると ...

Go言語

Go言語、ゴルーチン(goroutine)で並列処理を

1 はじめに2 ゴルーチン2.1 go文2.2 ゴルーチンの終了条件2.3 WaitGroup3 チャネル3.1 チャネルの型3.2 チャネルの生成3.3 チャネルの送受信3.4 チャネルとゴルーチン ...

フォロー

follow us in feedly

blog-page_side_responsive

2017年12月
« 11月 1月 »
 12
3456789
10111213141516
17181920212223
24252627282930
31 

アプリ情報

私たちは無料アプリもリリースしています、ぜひご覧ください。 下記のアイコンから無料でダウンロードできます。