如何查看超过3个表的所有字段laravel

时间:2018-07-12 12:29:52

标签: laravel

嗨,有人可以帮我吗?我是laravel的新手,我有这三个表:

表1.用户

  

“ first_name”,“ last_name”,“ bio”,“ image”,“ email”,“ password”,   'user_group','remember_token',

表2.专业

  

“ id”,“ title”,

表3 user_profesions

  

'id','user_id','profession_id'

我该如何利用所有这些字段并进行显示而不是查看 我在Controller上开始了如下操作:

 public function index(){


        $mentors = User::where('user_group', 2)->get();



        return view('mentors.list-of-mentors')->with(['mentors'=>$mentors]); 
    }

但这只是从表导师那里获取的,我希望能够将具有多个专业的用户的字段发送给视图

1 个答案:

答案 0 :(得分:3)

尝试以下 另外,请确保您的UserProfession模型与User and Profession之间具有归属关系

UserProfession.php模型

public function user()
{
    return $this->belongsTo(User::class, 'user_id');
}

public function profession()
{
    return $this->belongsTo(Profession::class, 'profession_id');
}

您的代码

UserProfession::with('user', 'profession')
    ->whereHas('user', function ($q) {
        $q->where('user_group', 2);
    })
->get();