Laravelのお勉強3

p120 バリデーション

Controllerクラスに組み込まれているValidateRequestsというトレイト(メンバーをまとめてクラスに追加するためのもの)に用意されている機能です。
基本的にはコントローラクラスにあるメソッドとして考えて構いません。

バリデーション 5.4 Laravelの下の方にバリデーションルールの一覧がある。

controllerのメソッド内で$this->validate(リクエスト,バリデーション設定の配列);を記述すると、
バリデーションエラーがあったらもとのフォームに戻してくれる

<?php
public function post(Request $request)
{
    $validate_lure = [
        'inputの名前' => 'バリデーションルール|バリデーションルール2個め'
    ];

    $this->validate($request, $validate_lure);
    return view(ビュー);
}

テンプレート側では$errorsにバリデーションのエラーメッセージを受け取れる。
$errors->all()をforeachすれば一括で、$errors('inputの名前')で個別にエラーメッセージを取り出せる。
$errors('inputの名前')も配列になっているので、$errors->get('inputの名前')で個別のエラーメッセージ全部取り出せる。
また、old('inputの名前')で前画面で入力した値を受け取れる。