我试图在Laravel 5.3的控制器中获得Product
但每次都显示Auth::user()
。这是在Laravel 5.3中改变了吗?
null
即使我已登录,它也会在if条件下每次都进行
答案 0 :(得分:0)
首先是它改变了; 5.2验证文件在app / Http / Middleware上,但知道它对vendor / laravel / framework / src / Illuminate / Auth的更改 现在我遇到了和你一样的问题,因为我的项目是5.2,我感到困惑,但你也可以在app / Http / Middleware上制作自己的身份验证文件 它适合我 我希望我的回答对你有用
答案 1 :(得分:0)
什么是最不可能的" laravel-way"但是解决方法是定义一个中间件并在构造函数方法中传入一个闭包。
public function __construct()
{
$this->middleware(function ($request, $next) {
$this->user = Auth::user();
return $next($request);
});
}
从那时起,您可以在其他方法中使用$this->user
。
它有效,但我不确定解决方案的适当性。如果有人知道更好的方式,我也在寻找它:)