【发布时间】:2016-05-13 10:14:24
【问题描述】:
我已经搜索并找到了如下各种结果: auth()->user() is null in Laravel 5.2 和 Auth::user() returns null
但是,我的还是不行。
Auth::user() 在控制器中起作用,但在模型中不起作用。它返回null。
代码是:
public function scopeOwned($query) {
$query->where('user_id', '=', Auth::user()->id);
}
我试过dd(Auth::user()),它也返回null。
有什么想法吗?
【问题讨论】:
-
dd时你登录了吗? -
确保您的模型顶部有
use Illuminate\Support\Facades\Auth;。 -
我已经登录。正如我所提到的,它可以识别控制器中的用户。但是,不在模型中。另外,我使用了命名空间
-
虽然它没有回答问题,但您应该将 $user 对象传递给模型。否则,如果您加载了一个用户并调用了作用域,它仍然会使用经过身份验证的用户(如果有的话)。
标签: laravel laravel-5 laravel-5.2