我有案子,cases_judges,法官和证人表。一个案件可以有许多法官和证人,我希望能够选择所有与案件有关的法官和证人,我不知道如何在案件和法官之间建立关系,因为他们不是法官与案件之间的直接联系。Cases_judges是案件与法官之间的唯一中介。我也尝试过使用Hasmanythrough的关系,但没有成功。
案例模型
public function case_judges(){
return $this->hasMany(Cases_judges::class,'case_id','id');
}
public function witness(){
return $this->hasMany(Witness::class,'case_id','id');
}
public function judges(){
return $this->hasManyThrough(Judges::class, Case_judge::class,'judge_id','id');
}判断模型
public function judges(){
return $this->hasMany(Case_judge::class,'case_id','id');
}Cases_judge模型
public function case(){
return $this->belongsTo(Cases::class);
}案例控制器我的案例控制器类似于这个公共函数索引(){
return Cases::with('case_judge','witness')->get();
}这个小提琴(http://sqlfiddle.com/#!9/217dcb/2/0)展示了我如何使用原始查询来完成它,但是我想以雄辩的方式来完成它。
发布于 2022-06-15 04:12:33
我认为cases和judges与中间表cases_judges是“多到多”的关系。
您可以按照此文档设置以下内容:https://laravel.com/docs/9.x/eloquent-relationships#many-to-many
https://stackoverflow.com/questions/72624835
复制相似问题