laravel有一个贯穿关系

iecba09b  于 2021-07-29  发布在  Java
关注(0)|答案(1)|浏览(233)

我在一个laravel应用程序中设置了以下数据库模式。为了简单起见,我只提到重要的专栏。
任务
作业id
工作
客户端id
用户
身份证件
在任务模型中,我希望有一个到users表的relationship方法,在本例中称为client( client_id )在中间 jobs table。
在我的代码中,我希望能够引用 $task->client(); 我翻阅了文件发现:

public function client()
{
    return $this->belongsToMany('App\User', 'users', 'client_id');
}

退货:
“sqlstate[42s22]:找不到列:“字段列表”中的1054未知列”“jobs.user\u id”“(sql:select)” users .*, jobs . client_id 作为 pivot_client_id , jobs . user_id 作为 pivot_user_idusers 内部连接 jobsusers . id = jobs . user_id 哪里 jobs . client_id =112和 users . deleted_at “为空)”

public function client()
{
    return $this->hasOneThrough('App\User', 'App\Job', 'client_id', 'user_id');
}

退货:
“sqlstate[42s22]:找不到列:“on子句”(sql:select)中的1054未知列”“users.user\id”“。” users .*, jobs . client_id 作为 laravel_through_keyusers 内部连接 jobsjobs . id = users . user_id 哪里 jobs . deleted_at 为空且 jobs . client_id =111和 users . deleted_at 为空限制(1)”
我怎样才能找回 User 模型来自 Task 模特?

34gzjxbg

34gzjxbg1#

你能试一下吗

public function client()
{
    return $this->hasOneThrough('App\User', 'App\Job', 'id', 'id', 'id', 'client_id');
}

相关问题