Laravelでバリデーションエラーをbladeに表示したい場合は$errorsにエラー情報が格納されているので取り出して表示させてあげましょう。
以下のように$errors->any()でバリデーションエラーがあるか判定が出来ます。
必要なエラーメッセージは$errors->all()で配列が取得できるのでforeachで回してあげましょう。
@if ($errors->any()) <div class="alert"> @foreach ($errors->all() as $error) <span class="danger">{!! $error !!}</span> @endforeach </div> @endif
また、特定の項目のエラーを判定したい場合は、$errors->any()
ではなく、$errors->has()
で判定してあげましょう。
nameがreasonの項目のエラーを表示したい場合は、以下のようにしてclassを付与してあげるとよいでしょう。
{{--エラーフォーム表示を想定した例--}} <div class="@if($errors->has('reason')) error @endif"> <input type="text" name="reason" value="{{old('reason','')}}" id="reason"> </div>
Laravelのbladeはバリデーションエラー関連が使いやすいので使いこなしたいですね。
お疲れ様でした。