我有以下模型/表格:
branch:
id - integer
department:
id - integer
teacher:
id - integer
branch_department_id - integer
branch_department:
id - integer
branch_id - integer
department_id - integer
通过数据透视表branch_department,每个分行有多个部门 每个部门都有很多老师
在上一个问题中,我要求在分支和教师之间建立 HasManyThrough 关系 使用这个解决了哪些问题:
public function teachers()
{
return $this->hasManyThrough(
Teacher::class,
BranchDepartment::class,
secondKey: 'branch_department_id',
);
}
现在我想对这种关系的逆关系进行建模。
这样我就可以从教师模型中得到它所属的分支
我该如何定义它?
你可以在 laravel 中像这样使用 ownTo 。你可以试试这个。
public function branch()
{
return $this->belongsToThrough(
Branch::class,
BranchDepartment::class,
'branch_department_id', // Foreign key on Teacher table
'id', // Local key on Branch table
'id', // Local key on BranchDepartment table
'branch_id' // Foreign key on BranchDepartment table
);
}