Laravel 连接 3 个表

Posted

技术标签:

【中文标题】Laravel 连接 3 个表【英文标题】:Laravel connect 3 tables 【发布时间】:2018-08-27 20:26:57 【问题描述】:

我有 3 张桌子 tbl_adminstbl_systemstbl_admin_roles。如果我希望管理员在每个系统中具有不同角色的多个系统中具有访问权限,我该如何连接这三个表。

我已经使用中间表admin_system 连接了tbl_adminstbl_systems(管理员和系统具有多对多的关系)。我应该为admin_system 表创建一个模型并使用另一个中间表将其与tbl_admin_roles 连接,还是有办法使用一个中间表连接这三个表?

【问题讨论】:

阅读 Laravel 关系文档。我相信它会给你一个更好的主意! See here 阅读文档后。请告诉你想用这三个表建立的关系。 【参考方案1】:

您可以使用相同的中间表。 我建议三个主表 tbl_admins、tbl_systems、tbl_roles 然后您的中间表将具有:admin_id、system_id、role_id 作为外键。 然后将模型与 Laravel 文档中适当的 Eloquent 关系链接起来。

Eloquent Relationships

【讨论】:

以上是关于Laravel 连接 3 个表的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Laravel 的 Eloquent 关系与 Eager Loading 连接 3 个表?

Laravel 5.3 查询从通过外键连接的 4 个表中获取结果

Laravel 连接 2 个表,第一个表中的一个数据和第二个表中的多行

Laravel 加入 3 个表

Laravel 8 如何连接 2 个表并检查值是不是存在

LARAVEL 如何连接 2 个不同的数据库并连接不同服务器上的 2 个表?