おはようございます。先日、Laravel10xになりPHP8.1系をサポートしたという記事を読みました。でも自分は8系や9系を使用しております。10系になり何が変わったのかなどは知りません。
今日はLaravelの基の話です。Laravelにはバリデーションというクラスがあります。バリデーションとは、POSTやGET送信を行ったデータが問題ないかを確認できるクラスです。そんなクラスの派生がフォームリクエストバリデーションクラスです。これを使用すれば自分のお好みのデータの判別処理が作れます。
作り方などはこちらを基に作ってみてください。
php artisan make:request StorePostRequest
尚、Bladeに表示するにはこんな感じで表示できます。
@foreach ($errors->all() as $error)
<li>{{$error}}</li>
@endforeach
因みにエラーメッセージを変えたい方はこんな方法で変更できます。こんな感じにつくってフォームリクエストバリデーションクラスの中に入れてあげてください。
public function messages()
{
return [
'name.required' => '名前は必須項目ですよ。',
'name.max:42' => '42文字以内で入力してください',
'age.required' => '年齢は必須項目ですよ。',
'age.numeric' => '整数を入力してください😄。'
];
}