我的情况是:
我有Course
型号
每个Course
可以有多个CourseTopics
,通过topics()
关系
每个CourseTopic
可以有多个Lessons
,通过lessons()
关系
是否有一种简洁的方法来检索和处理与单个Lesson
关联的所有Course
(例如,列出它们,或计算它们的总数)?
我的目标是在Blade模板中使用非常简短的语法;我不想让逻辑(或至少将其保持在最低限度)或原始SQL查询包含在我的模板中。
我尝试了什么:
$course->with("topics.lessons")
其中$course
是模板中课程的当前实例,不起作用(给我所有课程及其所有主题和课程)。
修改:
解决方案是定义hasManyThrough()
关系,如:
$this->hasManyThrough("Lessons", "CourseTopics");
这解决了2级嵌套关系的问题。那么3级呢?