Laravel关系魔术方法返回错误的相关模型

时间:2019-06-04 08:32:59

标签: laravel eloquent

在我的系统中,我具有Role :: class:

{id: 1, name: "admin"}
{id: 2, name: "user"}

与User:class的关系:

public function role()
{
 return $this->belongsTo(Role::class);
}

有问题的用户具有外键role_id = 2。

问题在于我写的时候:

Auth::user()->role

我得到ID为1(管理员)的角色模型,但是在我写的时候:

Auth::user()->role()->first()

我得到正确的结果-ID 2(用户)

  • 我看过原始查询,没关系
  • 绑定正确

1 个答案:

答案 0 :(得分:0)

怎么样?

Auth::user()->role()->first()->id

虽然最好在此负载上使用预先加载的负载,但这应该可以工作。