千家信息网

如何理解Laravle eloquent多对多模型关联

发表于:2024-11-11 作者:千家信息网编辑
千家信息网最后更新 2024年11月11日,本篇内容主要讲解"如何理解Laravle eloquent多对多模型关联",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"如何理解Laravle eloque
千家信息网最后更新 2024年11月11日如何理解Laravle eloquent多对多模型关联

本篇内容主要讲解"如何理解Laravle eloquent多对多模型关联",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"如何理解Laravle eloquent多对多模型关联"吧!

什么是多对多关联?

Eloquent中一个模型就是一个数据表,数据表之间通常会有关联,多对多关联就是2个表之间相互有很多关联,比如说:一个表存放了用户数据,

另一个表存放了文章的信息,

一个用户可以收藏多篇文章,一篇文章也可以被多个用户收藏,这就是 多对多关联 。

怎么用多对多关联?

使用Eloquent的多对多关联可以很便捷的互相查询、修改、增加、删除两个模型之间的关联。

多对多关联除了相互关联的两张表之外还需要一张记录关联的表(pivot表),一般记录两个模型的的ID就行

举个栗子

我们数据库里的三张表是user

articles

article_collections

我们需要创建2个模型,中间表模型不是必须的

通过在模型里写一个方法调用belongToMany()方法并返回结果来获取数据。

belongToMany()里传入的第一个参数是对应表,第二个参数是中间表的表名,第三个参数是当前模型在中间表的键名,第四个参数是关联模型在中间表的键名。

belongToMany(Articles::class, 'article_collections', 'user_id', 'article_id')  }}

这样我们就可以通过article方法得到user收藏的文章了

$articles = User::find(1)->articles()->get();

用where()、orderBy()等方法对查询的数据添加条件

用attach()方法添加关联,比如让id为1用户收藏id为1的article

$user = User::find(1);$user->articles()->attach(1)

用detach()方法去除关联,方法和attach()一样。

OK 以上就是Laravel eloquent 多对多关联的一些基础知识了。

到此,相信大家对"如何理解Laravle eloquent多对多模型关联"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

关联 模型 方法 数据 参数 就是 用户 之间 查询 两个 内容 数据表 文章 篇文章 学习 便捷 实用 更深 三个 信息 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 oracle数据库怎么改版本 广州为知互联网科技公司 qq邮箱服务器崩了吗 服务器内存最好的主板 武汉智能机器人软件开发培训 保障电子商务网络安全的方式 广东企业软件开发市场报价 黄浦区现代软件开发不二之选 梦幻西游网页版s开头的服务器 网络安全进校园手抄报儿歌 网络安全工信部最新资讯 计算机网络技术问题有哪些 CISCO服务器管理口图标 hp塔式服务器维修站 网络技术员要学会多久 国家安全网络安全措施 学生籍管理软件开发预算 服务器文件上传速度和什么有关 tbc祈福服务器金价多少 陕西网络安全技能大赛 oracle数据库怎么改版本 配置到云服务器 生产产品数据库设计入门经典 创建数据库中表 网络直播软件开发 面向对象的软件开发模型 php如何备份数据库 网络安全对数据库的安全 西城区戴尔双路机架式服务器 酒泉瞻严网络技术有限公司
0