验证函数在 laravel 表单验证 Laravel 5.2 中不起作用

validate function not working in laravel form validation Laravel 5.2

这里的 signin 函数工作正常但是 $this->validate() 函数 returns 在视图页面中没有任何内容.尝试了其他问答中建议的各种方法。助手似乎有问题。

用户控制器

public function postSignIn(Request $request)
{
    $this->validate($request, [
        'email' => 'bail|required',
        'password' => 'required'
    ]); 


    if (Auth::attempt([ 'email' => $request['email'], 'password' => $request['password'] ])){
        return redirect()->route('dashboard');
    }
    return redirect()->back();
}

登录页面

 @if ($errors->any())
                            <div>
                                    <ul>
                                        @foreach($errors->all() as $error)
                                            <li>{{$error}}</li>
                                        @endforeach  
                                    </ul>
                            </div>
                        @endif
                        <form name="loginForm" action="{{ route('signin') }}" method="post"  autocomplete="disable">

                            <div class="form-group mb-4">
                                <input type="email" class="form-control {{ $errors->has('email')? 'is-invalid' : ''}}" name="email" aria-describedby="emailHelp" placeholder=" " />
                                <label for="loginFormInputEmail">Email address</label>
                            </div>

                            <div class="form-group mb-4">
                                <input type="password" class="form-control  {{ $errors->has('password')? 'is-invalid' : ''}}" name="password" placeholder="Password" />
                                <label for="loginFormInputPassword">Password</label>
                            </div>

可能另一个问题是 $errors 没有被保存到会话变量 $errors 并且视图中没有显示任何内容。

这是同一问题的示例:http://laravel.io/forum/03-28-2016-errors-variable-empty-after-failed-validation

对我来说,上述 link 中定义的解决方案有效。解决方法:就是在app\Http\Kernel.php中把\Illuminate\Session\Middleware\StartSession::class,从$middlewareGroups移到$middleware

之前

之后

Source Thrade : Laravel MessageBag 错误数组在视图中为空,但如果我终止脚本则有内容