Laravel 5.2 Session flash no funciona incluso con middleware web
Estoy tratando de implementar la mensajería flash usando sesiones, pero no puedo hacerlo.
En mi controlador tengo:
public function store(Request $request) {
session()->flash('donald', 'duck');
session()->put('mickey', 'mouse');
return redirect()->action('CustomerController@index')->with('bugs', 'bunny');
}
Pero cuando verifico las variables de sesión en la vista, solo puedo ver los valores desession()->put('mickey', 'mouse')
.
Sesión:
{"_token":"F6DoffOFb17B36eEJQruxvPe0ra1CbyJiaooDn3F","_previous":{"url":"http:\/\/localhost\/customers\/create"},"flash":{"old":[],"new":[]},"mickey":"mouse"}
Muchas personas encontraron este problema al no tener las rutas relevantes dentro del middleware web. Me aseguré de hacer esto también, pero aún así no funcionaría.
En routes.php:
Route::group(['middleware' => ['web']], function () {
Route::get('/', function () {
return view('welcome');
});
Route::get('/customers', 'CustomerController@index');
Route::get('/customers/create', 'CustomerController@create');
Route::post('/customers', 'CustomerController@store');
});
En Kernel.php:
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',
],
];
¿Alguien puede decirme qué podría estar haciendo mal aquí? ¡Gracias!