Laravel Eloquent ORM - 获取第一个和第三个表数据

Posted

技术标签:

【中文标题】Laravel Eloquent ORM - 获取第一个和第三个表数据【英文标题】:Laravel Eloquent ORM - Get first and third table data 【发布时间】:2017-12-21 03:02:21 【问题描述】:

分类表

服务表

分支表

我有 3 个表链接在一起。以上是我的代码,我想产生与下面相同的结果。我可以使用一行代码来做到这一点吗?

或者我必须先从 2 个表中获取结果,然后才能获取 Branch 表?

谢谢。

【问题讨论】:

请发布您的代码和数据,而不是您的代码和数据的图片。用代码图片来帮助你比用实际代码来帮助你要困难得多。请阅读如何创建minimal reproducible example。 好的。会牢记这一点。 【参考方案1】:

如果您想获得包含服务和分支的类别集合,您可以在单个 eloquent 查询中预先加载它们。

$categories = Category::with('service.branches')->get();

但是如果你想达到你的要求,你仍然需要多写一点。

分形变形金刚可能会帮助您做到这一点。请参阅他们的文档here。

【讨论】:

谢谢。它确实实现了我想要的。

以上是关于Laravel Eloquent ORM - 获取第一个和第三个表数据的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 5.2 Eloquent ORM 从 3 个表中获取数据

Laravel Eloquent ORM - 获取第一个和第三个表数据

Laravel Eloquent ORM - 获取第一和第三表数据

Laravel使用Eloquent ORM操作数据库

Laravel Eloquent ORM 数据model操作

来自 SQL 的 Laravel Eloquent ORM 聚合函数