編集部からのお知らせ
(記事集)ニューノーマルで伸びる業界
「ニューノーマルとIT」新着記事一覧

ActiveRecordのバリデーションを知ろう

Human Resocia Co.,Ltd.

2016-01-13 12:00

ヒューマンリソシア株式会社はコラム「ActiveRecordのバリデーションを知ろう」を公開しました。
###

# はじめに
みなさんこんにちは。塩尻オープンソースラボの小澤です。

前回はActiveRecordの関連付け(アソシエーション)を使いモデルクラス同士に関係を持たせる方法と、それに付随して発生する「N+1問題」を解説しました。

今回はActiveRecordのバリデーション(検証)を取り上げます。バリデーションもActiveRecordにおける重要な仕組みの1つです。

# バリデーション(検証)
バリデーションとは、データベースにデータを保存する前に、保存するデータが妥当かを検証する仕組みです。Railsではバリデーションを簡単に利用できるようビルトインヘルパーが用意されていますが、独自のバリデータやバリデーションメソッドを作成することもできます。

バリデーションは、モデルクラスに対して次のようなメソッドを呼び出したときに自動的にトリガ(実行)されます。

– create, create!

– save, save!

– update, update!

!がついたcreate!などの破壊的メソッドでは、バリデーションエラーが起きると例外が発生します。一方、!がつかない非破壊メソッドでバリデーションエラーが起きた場合、saveとupdateはfalseを返し、createは単にそのオブジェクトを返します。

なお、newメソッドはオブジェクトを作成するだけのメソッドですので、バリデーションはトリガされません。

また、バリデーションは実行させたいがデータベースには保存しない、といったデータを扱うクラスでは、次のいずれかのモジュールをincludeし、valid?メソッドを呼び出すことで、任意のタイミングでバリデーションのみを実行することができます。

この続きは以下をご覧ください
(リンク »)
本プレスリリースは発表元企業よりご投稿いただいた情報を掲載しております。
お問い合わせにつきましては発表元企業までお願いいたします。

【企業の皆様へ】企業情報を掲載・登録するには?

御社の企業情報・プレスリリース・イベント情報・製品情報などを登録するには、企業情報センターサービスへのお申し込みをいただく必要がございます。詳しくは以下のページをご覧ください。

ホワイトペーパー

新着

ランキング

  1. 運用管理

    ファイルサーバ管理のコツはここにあり!「無法状態」から脱出するプロセスを徹底解説

  2. クラウドコンピューティング

    社員の生産性を約2倍まで向上、注目の企業事例から学ぶDX成功のポイント

  3. コミュニケーション

    真の顧客理解でCX向上を実現、いまさら聞けない「データドリブンマーケティング」入門

  4. ビジネスアプリケーション

    デメリットも把握しなければテレワークは失敗に?─LIXIL等に学ぶ導入ステップや運用のコツ

  5. 運用管理

    ニューノーマルな働き方を支えるセキュリティ-曖昧になる境界に変わらなくてはならないデータセンター運用

NEWSLETTERS

エンタープライズ・コンピューティングの最前線を配信

ZDNet Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]