在Laravel模型关联中,提供了远程一对一关联和远程一对多关联,但是文档中却没有说明这两种关联的反向写法。其实Laravel中的远程一对一和远程一对多关联也有反向关联,并且十分简单,都是 hasOneThrough
关联,下面举例说明。
有如下数据表:
colleges
id - integer
name - string
majors
id - integer
college_id - integer
name - string
students
id - integer
major_id - integer
name - string
获取指定学院的所有学生(远程一对多)
class College extends Model
{
public function students()
{
return $this->hasManyThrough(Student::class,Major::class);
}
}
获取指定学生所属的学院,注意外键的定义(远程一对多的反向,也就是远程一对一)
class Student extends Model
{
public function department()
{
return $this->hasOneThrough(Department::class,Major::Class,'id','id','major_id','department_id');
}
}
想要了解更多内容,请持续关注码农资源网,一起探索发现编程世界的无限可能!
本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
如有侵权请发送邮件至1943759704@qq.com删除
码农资源网 » Laravel远程一对一和远程一对多的反向写法
本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
如有侵权请发送邮件至1943759704@qq.com删除
码农资源网 » Laravel远程一对一和远程一对多的反向写法