首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel Auth::用户关系

Laravel Auth::用户关系
EN

Stack Overflow用户
提问于 2018-04-04 08:10:56
回答 4查看 32.6K关注 0票数 14

Laravel中,我试图显示Auth::user (用户)与部门之间的关系元素。在用户表中,我有id、name和department_id。在部门表中,我有id和名称。

在我创建的用户模型中

代码语言:javascript
复制
public function department()
    {
        return $this->belongsTo('App\Models\Department');
    }

然后,在刀片模板中,我尝试

Auth::user()->department

但是返回null并没有显示链接的部门。Null不正确,所有用户都有部门。苏,有什么帮助吗?关系有什么不对吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2018-04-04 08:49:41

在调用department_id方法时,应该添加‘$foreignKey’作为第二个参数($foreignKey),因为默认情况下它将搜索departmento_id。

代码语言:javascript
复制
public function departamento()
{
    return $this->belongsTo('App\Models\Departamento', 'department_id');
}

或者仅仅将User::department()方法重命名为User::department()

代码语言:javascript
复制
public function department()
{
    return $this->belongsTo('App\Models\Departamento');
}
票数 5
EN

Stack Overflow用户

发布于 2018-04-04 08:22:29

你可以试试这个User::with('departmento')->find(Auth::id());

票数 27
EN

Stack Overflow用户

发布于 2022-03-16 21:09:10

此方法使用更少的查询--其他查询两次是在user表之后进行的:

代码语言:javascript
复制
auth()->user()->load(['department']);
票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49645879

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档