Laravel7 バリデーション機能の使い方

Laravel7 バリデーション機能の使い方

Laravel7でフォームから送信されたリクエストデータにバリデーションをかける方法を記述してます。

環境

  • OS windows10 pro 64bit
  • Composer 1.10.5
  • PHP 7.4.5
  • MariaDB 10.4.12
  • Laravel Framework 7.6.2

※windows10に Laravel のインストールはこちら
※windows10に Composer のインストールはこちら
※windows10に PHP のインストールはこちら
※windows10に MariaDB のインストールはこちら

bootstrap導入

レイアウトにbootstrapを利用しているので、詳しい手順はこちらに記述してますが、下記のコマンドで利用可能にしてます。

入力フォーム用コントローラー作成

まずはテスト用の入力フォームを作成していきます。
「NameController」という名前でコントローラーを作成します。

app/Http/Controllers/ NameController.phpが生成されているので、
formメソッドとバリデーションと確認用のshowメソッドを作成します。

入力フォーム用ビュー作成

次にレイアウト部であるviewを作成します。

resources\views内で「name」というフォルダを作成して「form.blade.php」を下記の内容で、新たに作成します。

@csrf は Bladeテンプレート機能の1つで、CSRF対策となります。

下記のコードがerrorメッセージを表示する箇所となります。

oldは、入力エラー時の値を取得することができます。

次に resources\views\name内でリクエストデータ取得用の「show.blade.php」を下記の内容で、新たに作成します。

ルーティング追加

アクセスするURLを設定するため、ルーティングを記述します。
ここでは/nameに設定します。

確認

ブラウザから http://localhost:8000/name にアクセスしてみて、バリデーションが有効になっていることが確認できます。