Has Many Through
Eloquent Relationships Deep Dive 系列中的 Has Many Through 关联。
概述
本集讨论的是“Has Many Through”关联关系——我们并非每天都会使用它,但在需要通过一个中间模型访问一个远距离关联时,我们就会用到它。
试想一下:
- 部门(Departments)拥有多个用户(Users)
- 用户(Users)拥有多个任务(Tasks)
那么,如果你想知道“某个部门下有哪些任务?”,这就是“Has Many Through”关联为你提供的功能:一种无需繁琐的嵌套循环或复杂连接(joins),即可跨越中间模型进行访问的简洁方式。
什么是 Has Many Through 关联
一个“Has Many Through”关联允许一个模型通过一个中间模型访问另一个模型(例如:部门 → 用户 → 任务)。