恥ずかしながら
エンジニアに転職して2ヶ月が経ちます。
Laravelで開発をしていて、バリデーションのエラーを修正するとき
これまではバリデーションのエラーメッセージが吐き出されたところが赤枠で表示されていました。
今回バグを見つけたとき、バリデーションのエラーメッセージが表示されるだけで、どこのバグ???と戸惑いました。
Laravelでは
Laravelではバリデーションのエラーメッセージはどうやって表示されているのか・・・
それはドキュメントに書いてありました。
Illuminate\Http\Requestオブジェクトによって提供されるvalidateメソッドを使用します。バリデーションルールにパスすると、コードは正常に実行され続けます。しかし、バリデーションに失敗するとIlluminate\Validation\ValidationException例外が投げられ、適切なエラーレスポンスが自動的にユーザーに返送されます。
$validator->errors()
この箱に投げ込まれるわけか。
確かにwithValidatorで書いたエラーもエラーメッセージは最後ここに格納していたきがする・・・。
dd($validator->errors());
という感じでブラウザに表示すると、エラーメッセージが配列として格納されていました。
めでたし。