我在Laravel中使用FLASH来显示小通知,这是我的函数的样子:
public function movetotrash($id){
$page = Pages::where('id', $id) -> first();
$page -> active = 0;
//$page -> save();
\Session::flash('flash_message', 'Post has been successfully moved to trash');
return redirect('pages');
}
以下是我的观看方式:
<div class="col-md-12">
@if(Session::has('flash_message'))
<div class="alert alert-success">
{{Session::get('flash_message')}}
</div>
@endif
</div>
以下是我的路线的样子:
Route::get('/', function () {
return view('welcome');
});
Route::get('dashboard', function () {
return view('dashboard.dashboard');
});
Route::get('pages/trash', 'PagesController@trashpage');
Route::get('pages/movetotrash/{id}', 'PagesController@movetotrash');
Route::resource('pages', 'PagesController');
我是否需要在控制器中调用某个库以使Session
正常工作?
谢谢! (提前)
答案 0 :(得分:0)
来自laravel docs:https://laravel.com/docs/master/routing
未放置在Web中间件组中的任何路由都不会 访问会话和CSRF保护,因此请确保所有路由 需要将这些功能放在组内。通常情况下,你会 将您的大部分路线放在此群组中:
Route::group(['middleware' => ['web']], function () {
//all routes
});
将您的路线放在中间件中,您的问题就会解决。