在Eloquent中嵌套了一对多的关系

时间:2017-02-05 15:31:47

标签: php mysql laravel model eloquent

让我们说我有三个具有这种关系的模型

用户 hasMany (app / organization)

组织 hasMany (app / order)

ORDER

我可以去一个级别 的用户>组织() - >得到()

让所有组织与用户联系在一起。但是每个组织也有0..many ORDER实体。所以我想这样做:

用户>组织() - >订单() - >得到()

获取来自特定用户的所有组织的所有订单的列表。这样可能吗?

1 个答案:

答案 0 :(得分:4)

您可以做的就是在User模型上实施hasManyThrough()关系。

public function orders()
{
    return $this->hasManyThrough(Order::class, organisation::class);
}

然后你可以查询,

$user->orders()->get();