在我的基本控制器中设置auth用户是不好的做法,如下所示:
abstract class Controller extends BaseController
{
use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
protected $user;
public function __construct()
{
$this->middleware(function ($request, $next) {
$this->user = Auth::user();
view()->share('signedIn', Auth::check());
view()->share('user', $this->user);
return $next($request);
});
}
}
或者我应该如何在控制器方法中访问auth用户:
public function index()
{
$user = Auth::user();
}
我根据taylors评论(101 LINQ-Samples)
提出要求然而,Jeffery Way似乎是在构造函数中设置这个,正如Laracast的一些课程所示?
答案 0 :(得分:0)
在较新的版本中,您无法像5.2中那样使用控制器构造函数中的会话。你只是在看旧课程。
此外,在自己的类中定义中间件,而不是在控制器中。