我有以下三个表users
,jobs
和job_statuses
,其中包含以下简单架构。
**Users Table**
id, user_id, email, password
**Jobs Table**
id, user_id, title, description, status_id
**Job_statuses Table**
id, status
我已使用Jobs
成功检索到authorized user
发布的one-to-many relationship
列表,但我无法使用status
抓住status_id
}
用户模型
public function job(){
return $this->hasMany(Job::class, 'user_id')->take(5);
}
工作模式
public function user() {
return $this->belongsTo(User::class, 'user_id');
}
public function jabstatus() {
return $this->hasOne(JabStatus::class, 'status_id', 'id');
}
Job_Statuses模型
public function statuses() {
return $this->belongsTo(Job::class, 'id', 'status_id');
}
尝试做类似的事情时
@foreach($user->job as $job)
{{$job->statuses->status}}
@endforeach
我收到了错误:{{$job->statuses->status}}
答案很清楚,谢谢。
答案 0 :(得分:0)
最后能够得到我想要的东西。
我所拥有的是多重雄辩的关系。
工作模式
public function jobstatus() {
return $this->hasOne(JobStatus::class, 'id');
}
JobStatus模型
public function status() {
return $this->belongsTo(Job::class);
}
然后:
$user = User::with(['profile', 'review', 'job.jobstatus'])->find(Auth::User()->user_id);
return view('user.dashboard', ['user' => $user]);
然后在我的观点上:
@foreach(@$user->job as $job)
{{$jab->jobstatus->status}}
@endforeach