Laravelのバリデーション方法&設定例【まとめ】

Laravelバリデーションまとめ Laravel
※当サイトはアフィリエイト広告を掲載しています。

バリデーションは、ウェブアプリケーションにとって非常に重要な要素です。失敗すればセキュリティにも関わってきますから、入念に行わなければなりません。

従来は自分でチコチコとバリデーションを書いていた方も多いと思いますが、非常に大変ですし、非効率的です。自作のバリデーションクラスを作っていたとしても、メンテナンスが大変です。

そこでLaravelでは、バリデーションを簡単にする方法を用意してくれています。

それらの機能を活用すれば、複雑なバリデーションもあっという間に書けてしまいます。また、利用も簡単で、FormRequestのように、読み込むだけでOKなものも。メンテナンスもLaravel任せにできるので最高ですね。

とは言え覚えることはたくさんあり、私も勉強中です。そんなLaravelの基本のキとも言える、バリデーションについて、当サイトの解説リンクを中心にまとめました。

執筆時点の環境:Laravel 10. x です。

公式マニュアル

身も蓋もないですが、公式の「Lavall 10.x バリデーション」のページも併せてご覧ください。翻訳特有の読みづらさはありますが、私も定期的に確認しています。

10.x バリデーション Laravel

バリデーションの方法3つ

Laravelが用意するバリデーションの方法は、以下の3種類あります。

  1. Requestクラスのvalidateメソッドで
  2. Validatorファサードで
  3. FormRequestの子クラスで

詳しくは、以下の解説を参照してください。

個人的には、業務で提供しているウェブアプリケーションでは、FormRequestの子クラスで行うことがほとんどです。

ですので、FormRequestをきちんと理解するためにまとめたのが以下の記事です。

FormRequestクラスではバリデーションの前に認可処理が行われます。

関連事項として、認可を知っておくことは重要です。認可を処理するauthorize()メソッドについて、深掘りして詳しく書いた記事が以下です。

バリデーションルールの指定方法

バリデーションを行う方法は複数ありますが、その際のルール指定は共通しています。

ですのでルール指定を覚えておけば、どの方法でもバリデーションできるようになります。

初心者向けバリデーションルールの基本

初心者の方が、Laravelのバリデーションのルール指定方法を学ぶ際は、以下記事をご覧ください。

Lara
Lara

私が初心者のころ、バリデーション方法とごっちゃになって余計混乱しました(文献によって方法が違って紹介されているから)。バリデーションのルールは共通です。

エラーメッセージの日本語化

Laravelのバリデーションエラーメッセージを日本語化(翻訳)する方法は、以下の2種類があります。

  • 言語ファイルを修正する方法
  • FormRequestの子クラスを利用する方法

FormRequestの子クラスで日本語化

そのフォームだけのエラーメッセージを日本語化するなら、FormRequestの子クラスで日本語化するのが良いでしょう。

以下ページでは、FormRequestの子クラスを利用した方法について解説しています。

言語ファイルで日本語化

Webアプリケーション全体で日本語化させたい場合は、Laravelの言語ファイルで日本語化した方が便利です。

以下ページでは、言語ファイルで行う方法を解説しています。

エラーメッセージの表示

ウェブアプリケーションでは、Laravelのビュー部分(Blade)でエラーメッセージを表示することが一般的です。

いろいろなエラーの表示方法がありますので、以下ページで解説しています。

上記ページでご紹介している内容を、実際に使いながらご紹介している具体例は以下です。

バリデーション通過時

バリデーション通過後、通常はそのデータを取得したり、加工したりします。

データベースに登録するなどの処理を控えていることも多く、取得や加工は慎重に行う必要があります。

以下ページでは、バリデーション後のデータの取り扱い方法について解説しています。

まとめ

以上、現在当サイトでバリデーションについて書かれた記事をまとめました。

どれか一つでも、Laravel初心者さん・学習者さんの参考になれば幸いです。

コメント

タイトルとURLをコピーしました