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


関連記事

Go言語

Go言語でGinkgoを利用してBDDしてみた

1 はじめに2 BDDとは3 Ginkgoについて3.1 Ginkgoの概要3.1.1 Describe3.1.2 Context3.1.3 It3.1.4 JustBeforeEach3.1.5 B ...

GraphQL

いまさら学ぶGraphQL〜概要編〜

1 はじめに2 GraphQLとは?2.1 なぜGraphQLは誕生した?2.1.1 過剰な取得2.1.2 過少な取得2.1.3 エンドポイントの管理3 GraphQLのメリットとデメリット3.1 G ...

WebアプリからLINEのメッセージを送る方法

1 はじめに2 Messaging APIとは2.1 Messaging APIの仕組み2.2 Webhookイベント2.3 メッセージオブジェクトの種類2.4 料金形態3 LINE Develope ...

Go言語

Goのfmt.print系関数のまとめ

1 はじめに2 print関数の命名規則3 各print関数の説明3.1 Print(標準出力へ出力)系関数3.2 Sprint(文字列を出力)系関数3.3 Fprint(ファイルへ出力)系関数4 書 ...

rails

Railsでの非同期処理とDelayed Job

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

フォロー

blog-page_side_responsive

2017年12月
 12
3456789
10111213141516
17181920212223
24252627282930
31  

アプリ情報

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