Vol*_*il3 4 view laravel laravel-5.3
我通过从表中获取值来传递共享视图中的值。我需要知道用户 ID,但Auth::check()返回 false。我该怎么做?下面是代码:
public function boot()
{
$basket_count = 0;
if (Auth::check()) { //always false
$loggedin_user_id = Auth::user()->id;
$basket_count = Cart::getBasketCount();
}
view()->share('basket_count', $basket_count);
}
Run Code Online (Sandbox Code Playgroud)
好吧,事实证明那里ServiceProviders不适合做这样的事情。最好的事情是一个Middleware. 因此,如果您想调用 Auth,请创建中间件并将值传递给视图。
public function handle($request, Closure $next)
{
$basket_count = 0;
if ($this->auth) { //always false
$loggedin_user_id = $this->auth->user()->id;
$basket_count = Cart::getBasketCount($loggedin_user_id);
}
view()->share('basket_count', $basket_count);
return $next($request);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3270 次 |
| 最近记录: |