Laravel 5:显示远离关系的价值

时间:2015-10-19 15:32:38

标签: relationship laravel-5.1

我怀疑并确定你可以帮助我。

如果我有一个带有'work_id'行的表用户,并且此值是一个相关的foreing键,'id'进入'work'表。

在'work'表中,我有一个'work_competence_id',并且是'work_competence'表的关键词。

进入'work_competece'我有另一行'compe_id',这是其他的外键,将'id'值与'权限'表相关联......

如何在我的视图中获得能力'名称'(例如)。

我做了一些简单的事情,比如使用

显示每个用户的工作名称
public function work()
{
    return $this->hasOne('App\Work', 'id', 'work_id');
}

我将此代码放入用户模型中。 我用它来查看:

{{ $user->work->name }} 

但是,如何处理如上所述的那么多关系?

谢谢!

2 个答案:

答案 0 :(得分:0)

我不确定,请尝试:

public function competence(){
    return this->work()->competence();
}

并在工作模型中创建权限方法

答案 1 :(得分:0)

您可以在多个关系之间跳转:

// Work class
public function competence(){
    return $this->hasOne('App\Competence', 'id', 'competence_id');
}

然后:

public function work(){
    return $this->hasOne('App\Work', 'id', 'work_id');
}

最后在您看来:

{{ $user->work->competence->name }}