2016-03-30 105 views
0

我剛安裝了Laravel laravel new name最後一個版本。它給我一個錯誤,但做作曲家更新它完成安裝。

現在我有一個完整的窗體視圖,我想做一個驗證。一切都很順利,但錯誤和輸入變量在視圖中是空的(它們在控制器中不是空的)。

我已經檢查了Kernel.php爲ShareErrorsFromSession類:

protected $middlewareGroups = [ 
     'web' => [ 
      \App\Http\Middleware\EncryptCookies::class, 
      \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class, 
      \Illuminate\Session\Middleware\StartSession::class, 
      \Illuminate\View\Middleware\ShareErrorsFromSession::class, 
      \App\Http\Middleware\VerifyCsrfToken::class, 
     ], 

     'api' => [ 
      'throttle:60,1', 
     ], 
    ]; 

我的路線是這樣的:

Route::group(['middleware' => ['web']], function() { 
    Route::auth(); 

    Route::get('/', [ 
    'as' => 'home', 
    'uses' => '[email protected]' 
    ]); 

    Route::post('/inscrito', [ 
    'as' => 'nueva_inscripcion', 
    'uses' => '[email protected]' 
    ]); 

    Route::get('/redireccion', [ 
    'as' => 'redireccion', 
    'uses' => '[email protected]' 
    ]); 

}); 

控制器正常工作:

$validRules = array('razonSocial' => 'required'); 

    $validator = Validator::make($request->all(), $validRules); 
    //return json_encode($validator->errors(), JSON_PRETTY_PRINT); 
    if ($validator->fails()) { 
     return redirect()->back()->withErrors($validator)->withInput(); 
    }else{ 
     $input = $request->all(); 

     Inscripcion::create($input); 

     return redirect()->route('redireccion'); 
    } 

在我嘗試調用$ errors var的視圖,但它完全是空的,對於old('nombre')也是如此。

我該如何解決這個問題?我很着急,沒有想法。

回答

0

在你的控制器嘗試,而不是

return redirect()->back()->withErrors($validator->errors())->withInput(); 

return redirect()->back()->withErrors($validator)->withInput(); 
+0

具有相同的結果已經測試。所有正常的程序,以獲得錯誤進行了測試。不過謝謝。 –

+0

如果您看到上面的2行,您將看到您正在討論的代碼的源代碼註釋。 –