[ Laravel 从入门到精通 ] 数据库和 Eloquent 进阶 —— Eloquent 模型关联关系(下)

在前面两篇教程中,学院君陆续给大家介绍了 Eloquent 模型类支持的七种关联关系,通过底层提供的关联方法,我们可以快速实现模型间的关联,并且进行关联查询。今天我们将在定义好模型关联的基础上进行关联查询、插入和更新操作,看看如何借助模型关联提高代码的可读性并提高编码效率。 关联查询 关于关联查询,我们在前面介绍关联关系定义的时候已经穿插着介绍过,这里简单回顾下。在 Eloquent 模...

[ Laravel 从入门到精通 ] 数据库和 Eloquent 进阶 —— Eloquent 模型关联关系(中)

在上一篇教程中我们给大家介绍了一对一、一对多、多对多这三种日常工作中很常见的关联关系及其使用,这一篇教程我们将继续介绍剩下的四种更加复杂的关联关系,分别是远层一对多和多态关联(包哈三种子类型),这几个关联关系听起来就让人有点懵,所以学院君将结合具体实例来讲解,希望看完这篇教程,你可以掌握这几种关联关系。 远层一对多关联 什么是远层一对多关联 我们在上一篇教程中学习了一对多关联,远层一对多...

[ Laravel 从入门到精通 ] 数据库和 Eloquent 进阶 —— Eloquent 模型关联关系(上)

我们所熟知的 MySQL、SQL Server、Oracle 都是关系型数据库,何谓关系型数据库?简单来说就是数据表之间存在关联关系。到目前为止,我们介绍的所有 Eloquent 模型操作都是针对单表的,接下来我们将花三篇左右的篇幅来给大家介绍如何在 Eloquent 模型类中建立模型之间的各种关联关系,以及如何实现关联查询和更新。 Eloquent 模型支持的关联关系包括以下六种: ...

基于 Laravel + Vue 构建 API 驱动的前后端分离应用系列(十八) —— 实现 Laravel 模型类之间的多对多关联及冲泡方法前端查询 API

在前面的教程中,我们已经陆续完成了咖啡店的添加和在高德地图上的标记,接下来我们会实现一些更加复杂的功能,在实现这些功能之前,需要先准备好数据结构,因为一个咖啡店可能会提供多种冲泡方法,单个冲泡方法本身也不隶属于任何咖啡店,所以在这篇教程中,我们将通过 Laravel Eloquent 模型类的多对多关联来构建咖啡店和对应冲泡方法之间的关联关系,有关多对多关联的实现,可以先阅读下官方文档。...

[ Laravel 5.7 文档 ] 测试系列 —— 数据库测试

简介 Laravel 提供了多个有用的工具让测试数据库驱动的应用变得更加简单。首先,你可以使用辅助函数 assertDatabaseHas 来断言数据库中的数据是否和给定数据集合匹配。例如,如果你想要通过 email 值为 xueyuanjun@laravelacademy.org 的条件去数据表 users 查询是否存在该记录 ,我们可以这样做: public function tes...

[ Laravel 5.7 文档 ] Eloquent ORM —— API 资源

简介 构建 API 时,在 Eloquent 模型和最终返回给应用用户的 JSON 响应之间可能需要一个转化层。Laravel 的资源类允许你以简单优雅的方式将模型和模型集合转化为 JSON 格式数据。 生成资源类 要生成一个资源类,可以使用 Artisan 命令 make:resource,默认情况下,资源类存放在应用的 app/Http/Resources 目录下,资源类都继承自 I...

[ Laravel 5.7 文档 ] Eloquent ORM —— 关联关系

简介 数据表经常要与其它表做关联,比如一篇博客文章可能有很多评论,或者一个订单会被关联到下单用户,Eloquent 让组织和处理这些关联关系变得简单,并且支持多种不同类型的关联关系: 一对一 一对多 多对多 远层一对多 多态关联 多对多的多态关联 定义关联关系 Eloquent 关联关系以 Eloquent 模型类方法的方式定义。和 Eloquent 模型本身一样,关联关系也是强大的...

Laravel API 系列教程(三):使用 API Resource 来创建自己的 {JSON:API} 格式 API

 上一篇教程中我们通过 jwt-auth 实现了 Laravel 的 API 认证,认证过后就可以通过 http://apidemo.test/api/auth/user 接口访问当前用户信息: 可以看到上面的返回数据以原生格式返回,没有经过任何处理,甚至有可能包含敏感信息,我们当然可以处理之后再返回,一个两个接口还好,如果现实业务中面对成百上千个接口呢?这种处理方...

[ Laravel 5.6 文档 ] 测试系列 —— 数据库测试

简介 Laravel 提供了多个有用的工具让测试数据库驱动的应用变得更加简单。首先,你可以使用辅助函数 assertDatabaseHas 来断言数据库中的数据是否和给定数据集合匹配。例如,如果你想要通过 email 值为 xueyuanjun@laravelacademy.org 的条件去数据表 users 查询是否存在该记录 ,我们可以这样做: public function t...

[ Laravel 5.6 文档 ] Eloquent ORM —— API 资源类

简介 构建 API 时,在 Eloquent 模型和最终返回给应用用户的 JSON 响应之间可能需要一个转化层。Laravel 的资源类允许你以简单优雅的方式将模型和模型集合转化为 JSON 格式数据。 生成资源类 要生成一个资源类,可以使用 Artisan 命令 make:resource,默认情况下,资源类存放在应用的 app/Http/Resources 目录下,资源类都继承...