我从会话中获取了user_id并在我的控制器中使用了相当多的内容。所以我正在研究检索该变量的方法。
我已经设置了所有内容(我的理解),但变量正在返回
空
我的控制器如下所示:
O(n)
这与会话有关吗?
我该如何找回它?
答案 0 :(得分:4)
您遇到此问题的原因是因为控制器__construct
方法在启动会话的中间件之前运行。
正如帖子所说,您可以使用控制器middleware
方法中的__construct
方法解决此问题:
public function __construct()
{
$this->middleware(function ($request, $next) {
$this->user_id = session('id');
return $next($request);
});
}
这将允许您在控制器上设置user_id
。
希望这有帮助!