迩鎏鎈论坛

 找回密码
 立即注册
开启左侧

Laravel 中模型关联的几种用法总结

[复制链接]
发表于 2023-3-12 15:09:35 | 显示全部楼层 |阅读模式 来自 中国福建福州

Laravel 中的模型关联为我们使用带来了极大遍历,今天总结一下几种常见的模式和用法。

一对多

举例说明,Post ↔ Comment



执行 SQL 数量

如果使用 with 时,会一个查询会拆解为两个 SQL,一个是查找 Post,一个是查找 Comment(该查找使用的是 select in 方法,多个 Post 只执行一次 Comment 的查询工作)

用法(使用 with

$comments = Post::with('comments')->find(1)->comments

用法(使用 load

$post = Post::find(1)

$post->load('comments')

load 是对已经查出的模型使用,with 是直接做好关联关系的查询,两者查询的 sql 是一样的 。

多对多

举例说明,User``` ↔ ```Role



用法(使用 with

$roles = User::with('roles')->find(1)->roles;

用法(使用 load

$user = User::find(1);

$user->load('roles');

load 是对已经查出的模型使用,with 是直接做好关联关系的查询,两者查询的 sql 是一样的 。

一对一

举例说明,User ↔ Profile



用法(使用 with

$user = User::with('profile')


以下是回复内容:


采集网址:
https://modstart.com/thread/837
迩鎏鎈论坛 - 版权声明 1、在发表言论时,请遵守当地法律法规。主题所有言论纯属个人意见,与本站立场无关。
2、本站所有主题由作者发表,作者享有帖子相关版权,其他单位或个人使用、转载或引用本文时必须征得作者同意并注明来源于迩鎏鎈论坛
3、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意。
4、帖子不遵守当地法律法规、广告、人身攻击等情况时,迩鎏鎈论坛管理人员有权不事先通知发贴者而删除本文。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|迩鎏鎈论坛 ( 闽ICP备19021048号 )|站点地图

GMT+8, 2025-8-28 23:38 , Processed in 0.109341 second(s), 11 queries , Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表