首先,我登录了,它在我看来会发出错误"未定义的$ Scholar"。
if (Auth::check()) {
$scholar = Scholar::where('user_id','=','Auth::User()->id')->count();
view()->share('scholar', $scholar);
}
第二,我尝试使用dd(Auth::check());
,然后在IM登录时返回false。
为什么Auth::check()
返回false,即使用户已登录?
if (Auth::check()) {
dd(Auth::check());
$scholar = Scholar::where('user_id','=','Auth::User()->id')->count();
view()->share('scholar', $scholar);
}
三个错误:
-
您的WHERE子句将Auth用户ID放在报价中,因此它将其评估为字符串,因此查询未找到任何行
-
您并不是完全获取学者行,而是在查询计数?
-
您访问已验证的用户错误
尝试以下操作:
if (Auth::check()) {
$scholar = Scholar::where('user_id', '=', Auth::user()->id)->first();
view()->share('scholar', $scholar);
}
P.S。代替Auth::user()->id
,您也可以使用Auth::id()
-请在此处查看更多详细信息:https://laravel.com/docs/5.4/authentication