[ Laravel 从入门到精通 ] 数据库和 Eloquent 应用 —— 结合 Bootstrap + Vue 组件实现异步分页功能

通过前面的系列教程,我们已经介绍完了 Laravel 框架支持的所有对数据库相关基础功能。在日常开发中,对数据库查询结果进行分页也是一个非常常见的需求,我们可以基于之前介绍的查询方法和前端 HTML 视图实现分页功能,不过从 Laravel 5.3 开始,Laravel 框架就已经为我们提供了非常完整的分页解决方案,包括后端 API 和前端视图。不管你使用查询构建器还是 Eloquent...

[ Laravel 从入门到精通 ] 数据库和 Eloquent 进阶 —— 在 Eloquent 模型类上设置访问器和修改器

问题引出 前面两篇教程我们陆续为大家介绍了模型类的基本增删改查操作,以及如何通过模型类进行批量赋值和软删除,今天我们继续为大家介绍模型类的高级特性 —— 访问器和修改器。 在讲访问器和修改器之前,我们先来看一个例子,在带有用户功能的系统中,除了用户注册时使用的用户名之外,我们有时候还允许用户设置昵称,这个昵称是可选的,我们在页面上显示用户名时,会优先展示用户昵称,如果该用户没有设置昵称,...

[ Laravel 从入门到精通 ] 数据库和 Eloquent 进阶 —— 通过查询构建器实现复杂的查询语句

在上一篇教程中,我们通过查询构建器实现了简单的增删改查操作,而日常开发中,往往会涉及到一些更复杂的查询语句,比如连接查询、子查询、排序、分页、聚合查询等等,这一篇教程我们将围绕这些内容展开探讨。 查询小技巧 我们首先来介绍几个 Laravel 自带的语法糖,可以帮助我们快速获取期望的查询结果,提高编码效率。 有时候,我们想要获取的并不是一行或几行记录,而是某个字段的值,你当然你可以查询到...

[ Laravel 从入门到精通 ] 处理用户请求:通过 Request 对象实例获取用户请求数据

到目前为止,我们在教程中所提供的大部分是静态页面。作为一门主要用于构建 Web 网站的动态语言,PHP 不仅可以处理静态页面,更重要的功能是处理用户动态请求,这才是一个 Web 2.0 网站最灵动的部分,从留言板到博客评论、到形形色色的社交网站、问答网站,无不是用户创造的内容让互联网更加绚烂多姿、五彩缤纷。而作为最流行的 PHP 框架,Laravel 自然也是为处理用户请求提供了丰富的工...

[ Laravel 5.7 文档 ] 测试系列 —— HTTP 测试

简介 Laravel 为生成 HTTP 请求、测试输出提供了流式 API。举个例子,我们 Laravel 提供的测试示例: <?php namespace Tests\Feature; use Tests\TestCase; use Illuminate\Foundation\Testing\RefreshDatabase; use Illuminate\Foundation\...

[ Laravel 5.7 文档 ] Eloquent ORM —— 序列化

简介 当构建 JSON API 时,经常需要转化模型和关联关系为数组或 JSON。Eloquent 提供了便捷方法以便实现这些转换,以及控制哪些属性被包含到序列化中。 序列化模型 & 集合 序列化为数组 要转化模型及其加载的关联关系为数组,可以使用 toArray 方法。这个方法是递归的,所以所有属性及其关联对象属性(包括关联的关联)都会被转化为数组: $user = App\User:...

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

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

[ Laravel 5.7 文档 ] Eloquent ORM —— 访问器和修改器

简介 访问器和修改器允许你在获取模型属性或设置其值时格式化 Eloquent 属性。例如,你可能想要使用 Laravel 加密器对存储在数据库中的数据进行加密,并且在 Eloquent 模型中访问时自动进行解密。 除了自定义访问器和修改器,Eloquent 还可以自动转换日期字段为 Carbon 实例甚至将文本转换为JSON。 访问器 & 修改器 定义访问器 要定义一个访问器,需要在模型...

[ Laravel 5.7 文档 ] 数据库操作 —— 分页

简介 在其他框架中,分页可能是件非常痛苦的事,Laravel 让这件事变得简单、易于上手。Laravel 的分页器与查询构建器和 Eloquent ORM 集成在一起,并开箱提供方便的、易于使用的、基于数据库结果集的分页。分页器生成的 HTML 兼容 Bootstrap CSS 框架。 基本使用 基于查询构建器进行分页 有多种方式实现分页功能,最简单的方式就是使用查询构建器或 Eloqu...

[ Laravel 5.7 文档 ] 安全系列 —— API 认证(Passport)

简介 Laravel 通过传统的登录表单已经让用户认证变得很简单,但是 API 认证怎么实现?API 通常使用令牌(token)进行认证并且在请求之间不维护会话(Session)状态。Laravel 官方扩展包 Laravel Passport 让 API 认证变得轻而易举,Passport 基于 Alex Bilbie 维护的 League OAuth2 server,可以在数分钟内为...