laravel orm通过多个数据透视表到达一个模型

时间:2015-05-22 07:58:55

标签: php mysql laravel-4 orm eloquent

我在Laravel相当新,我遇到了问题。我会直接谈谈它: 所以我在我的数据库中有这些表:

Instructor (Id,name)
Licence (Id,name)
Discipline (Id,name)
Module (Id,name)

数据透视表:

LicenceDiscipline(id, fk_discipline_id, fk_licence_id)
LicenceDisciplineInstructor(id, fk_licence_discipline_id, fk_instructor_id)
LicenceDisciplineInstructorModule(fk_licence_discipline_instructor_id, fk_module_id)

laravel中的模型: 讲师,执照,纪律,模块。

教师可以选择许可证(他可以拥有更多),他选择的每个许可证都有一个学科(有更多的学科可供选择)。现在在教师选择的学科中,他可以从多个模块中进行选择,他可以选择0或*。

所以我的问题是:如何在模型讲师的laravel中定义一个关系,并输入如下函数:

public function modules(){
        return $this->belongsToMany('Modules');
    }

所以我可以获得所有教师模块? 请记住,我必须从Instructor到licenceDisciplineInstructor,检查LicenceDisciplineInstructorModule中的'that'ID并获取教师所具有的所有模块。

0 个答案:

没有答案