Laravel 5.4正确使用hasManyThrough

时间:2018-02-10 12:03:59

标签: eloquent laravel-5.4

我正在开发应用程序,我希望从3个不同的表中获取数据。 admissions_categoriesadmissionsprograms

admissions表是admissions_categoriesprograms的支点。

我希望通过数据透视表admissions_categories获取programs的所有记录,包括与其关联的admissions个名称。使用hasMany我可以获得admissions_categoriesadmissions的多个关系,但是如何从programs表中获取程序名称。

我在文档中尝试了hasManyThrough示例,但它与我的情况略有不同,而且我无法正确使用这些密钥。

这是我的结构表格。

admissions_categories Admission Categories Table

admissions Admissions Table

programs Programs Table

我想要的结果是

admissions_categories.name, admissions_categories.last_date, programs.name (can be multiple)

1 个答案:

答案 0 :(得分:1)

假设您有一个名为admissions_categories AdmissionCategory的模型:

AdmissionCategory::with('programs')->get();

这将急切加载关系并包含与AdmissionCategory相关的程序。