【问题标题】:Jenssegers mongodb Auth::user() - Trying to get property of non-objectJenssegers mongodb Auth::user() - 试图获取非对象的属性
【发布时间】:2016-08-07 08:53:41
【问题描述】:

阅读 Jenssegers mongodb 文档,我已安装此模块以访问 mongodb 功能。在第一步中,我配置了用户登录/注册问题,并在捕获此错误之后。

`试图获取非对象的属性 ... array('guard' => null)

我需要在自定义控制器中获取当前用户 ID:

use Auth;

//method

...

Auth::guard('site')->user();

...

//

但我从Auth::user() 得到NULL。所有数据都在 Auth ([Auth][SessionGuard][User]) 中设置并存在,但在这里我看到了关于表中 [user] 对象中的 _id 字段的问题。所以本机 user() 方法想要在对象中找到 id 字段。如何将旧的 id 更改为 _id 以获取 user()?以前有人遇到过这个问题吗?

【问题讨论】:

  • 你的用户模型类是否扩展了 Jenssegers\Mongodb\Eloquent\Model?

标签: mongodb laravel authentication jenssegers-mongodb


【解决方案1】:

验证您的用户模型:

*//
use Jenssegers\Mongodb\Auth\User as Authenticatable;

class User extends Authenticatable{
/* */
}*

如果您使用的是 api 路由,请尝试在 mapApiRoutes() 函数中的 app\http\routeServiceProvider.php 中更改您的中间件

->middleware('api')

到:

->middleware('web')

【讨论】:

    猜你喜欢
    • 2017-05-20
    • 1970-01-01
    • 2017-09-14
    • 2013-07-24
    • 1970-01-01
    • 2019-06-30
    • 2018-03-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多