2016-06-12 148 views
1

我正在使用Laravel spark应用程序,问题是我无法显示验证错误。Laravel spark can not显示验证错误

这是代码。后端:

$validator = Validator::make($request->all(), [ 
     'email'  => 'email|unique:users,email', 
     'password' => 'min:8' 
    ]); 

    if ($validator->fails()) { 

     return redirect('users/add') 
      ->withErrors($validator) 
      ->withInput(); 
    } 

前端:

<div class="form-group"> 
          <label for="password">Password</label> 
          <input type="password" name="password" class="form-control"> 
          {{json_encode($errors)}} 
          @foreach ($errors->get('password') as $error) 
           <p class="checkbox help-block"> 
            <small>{{$error}}</small> 
           </p> 
          @endforeach 
         </div> 

的事情是,我相信,验证规则失败,并检查了。但是,错误变量是空的...

回答

1

检查laravel应用/供应商/ RouteServiceProvider.php 此行

protected function mapWebRoutes(Router $router) 
{ 
    $router->group([ 
     'namespace' => $this->namespace, 'middleware' => 'web', 
    ], function ($router) { 
     require app_path('Http/routes.php'); 
    }); 
} 

如果你的代码不具备这一点 - “中间件” =>“网络”

您必须添加到您的路由

Route::group([ 
    'middleware' => ['web'], 
], function() { 
    Route::get('some_action' , '[email protected]_action'); 
}); 
+0

它具有所有这些东西这一点。我所要做的就是移动 “\ Illuminate \ Session \ Middleware \ StartSession :: class, \ Illuminate \ View \ Middleware \ ShareErrorsFromSession :: class, \ App \ Http \ Middleware \ VerifyCsrfToken :: class,” 从网络中间件到中间件。这只是没有任何意义 – naneri