在Laravel的Eloquent中检索模型实例的嵌套关系

时间:2014-12-20 13:38:47

标签: php laravel laravel-4 eloquent

我的情况是:

  • 我有Course型号

  • 每个Course可以有多个CourseTopics,通过topics()关系

  • 每个CourseTopic可以有多个Lessons,通过lessons()关系

是否有一种简洁的方法来检索和处理与单个Lesson关联的所有Course(例如,列出它们,或计算它们的总数)? 我的目标是在Blade模板中使用非常简短的语法;我不想让逻辑(或至少将其保持在最低限度)或原始SQL查询包含在我的模板中。

我尝试了什么

$course->with("topics.lessons")

其中$course是模板中课程的当前实例,不起作用(给我所有课程及其所有主题和课程)。

修改

解决方案是定义hasManyThrough()关系,如:

$this->hasManyThrough("Lessons", "CourseTopics");

这解决了2级嵌套关系的问题。那么3级呢?

0 个答案:

没有答案