很基本的事情正在進行。使用Session Flash
消息顯示任何成功/錯誤消息。會話flash不能正常工作,放入[L5.2]
所有路線都在我的'middleware' => 'web'
組中設置。
現在我的問題。 ->flash()
不起作用,而->put()
。
控制器:
$request->session()->flash('alert-success', 'My flash message');
刀片:
@foreach (['danger', 'warning', 'success', 'info'] as $msg)
@if(Session::has('alert-' . $msg))
<p class="alert alert-{{ $msg }}">{{ Session::get('alert-' . $msg) }} <a href="#" class="close" data-dismiss="alert" aria-label="close">×</a>
</p>
@endif
@endforeach
在Laravel 5 docs陳述的return redirect('routeHere')->with('alert-success', 'My flash message');
也不起作用。
編輯
Laravel 5.2 Session flash not working even with web middleware重複。使用['middlewareGroups' => 'web']
而不是['middleware' => 'web']
確實解決了這個問題,但假設這不是要走的路。
您確定要在最近的下一個請求中使用它。因爲'flash'只適用於下一個請求......並且如果你想在稍後的任何請求中獲得這個消息,你應該使用'put'。 –
是的,我想要那個。同樣的問題在這裏:http://stackoverflow.com/questions/36279871/laravel-5-2-session-flash-not-working-even-with-web-middleware?rq=1(使用'middlewareGroups'而不是'中間件'可以工作,但不是我想的方式。 – Liam
你可以在視圖中轉儲:'{{dd($ request-> session() - > all())}}' –