Laravel 5.5:重定向路由并将变量传递到其他路由,然后控制器显示在视图上
我在AuthController上做逻辑Laravel 5.5:重定向路由并将变量传递到其他路由,然后控制器显示在视图上,laravel,laravel-5,Laravel,Laravel 5,我在AuthController上做逻辑 // AuthController $userPoint = $this->getLoginPoint($getUserUpdate); return redirect()->intended(route('page.top_page')); 我想将变量$userPoint传递给其他控制器(PageController) 这是我的页面控制器 Route::get('/top-page', 'PageController@topPage')-
// AuthController
$userPoint = $this->getLoginPoint($getUserUpdate);
return redirect()->intended(route('page.top_page'));
我想将变量$userPoint传递给其他控制器(PageController)
这是我的页面控制器
Route::get('/top-page', 'PageController@topPage')->name('page.top_page');
// PageController
public function index()
{
// I want to receive variable $userPoint here
return view('toppage', compact('UserPoint'));
}
会议:
使用
可以帮助您从其他控制器操作获取数据
如果您的$userPoint
是字符串或整数,只需将其置于会话中即可
如果它是模型实例,则可以存储其id
。在其他控制器中
使用id
查找您的userPoint
//AuthController
$userPoint=$this->getLoginPoint($getUserUpdate);
$request->session()->put('userPoint',$userPoint);
return redirect()->预期(路由('page.top_page');
公共功能索引(请求$Request)
{
$userPoint=$request->session()->get('userPoint');
返回视图('toppage',compact('userPoint');
}
最后,记得在注销后清除userPoint
Redis:
像会话一样使用redis。但是,您需要先安装redis
使用light\Support\Facades\Redis;
...
$userPoint=$this->getLoginPoint($getUserUpdate);
Redis::set('userPoint',$userPoint);
return redirect()->预期(路由('page.top_page');
并从另一个控制器获取用户点
// AuthController
$userPoint = $this->getLoginPoint($getUserUpdate);
return redirect()->intended(route('page.top_page'));
使用light\Support\Facades\Redis;
...
公共职能指数()
{
$userPoint=Redis::get('userPoint');
...
最后,记得在注销后清除用户点。我已经更新了我的答案。太好了,谢谢