[ Laravel 从入门到精通 ] 用户认证与授权系列 —— 用户注册登录流程及多字段登录实现

注册登录流程 我们接着上一篇教程继续往下走。如果系统中还没有任何用户的话,首先需要点击注册按钮进入注册页面: 填写注册信息,点击注册按钮,完成注册。如果设置了邮箱验证功能,需要验证邮箱后才能登录,否则会直接登录,并跳转到 home 路由: 如果在登录和注册过程中验证表单失败,则会在对应字段提示错误信息: 对应的验证规则在相应的控制器中都可以看到,如果你对这一块还不太熟悉,可以查看在...

[ Laravel 从入门到精通 ] 用户认证与授权系列 —— 通过内置脚手架快速实现用户认证

今天开始我们将开启用户认证与授权系列,主要规划了以下内容: 通过内置命令快速实现登录认证功能 用户登录注册流程及多字段登录实现 基于多表的用户认证功能实现 基于 API 的用户认证功能实现 用户认证相关事件触发及监听 邮箱验证及找回密码功能实现 不同系统用户单点登录实现 基于 ACL 的用户权限管理实现 基于 RBAC 的用户权限管理实现 希望通过这个系列的学习,可以帮助你彻底掌握 ...

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

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

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

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

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

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

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

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

[ Laravel 从入门到精通 ] 数据库和 Eloquent 进阶 —— Eloquent 模型事件和监听方式大全

所有支持的模型事件 在 Eloquent 模型类上进行查询、插入、更新、删除操作时,会触发相应的模型事件(关于事件我们后面会单独讲),不管你有没有监听它们。这些事件包括: retrieved:获取到模型实例后触发 creating:插入到数据库前触发 created:插入到数据库后触发 updating:更新到数据库前触发 updated:更新到数据库后触发 saving:保存到数据库...

[ Laravel 从入门到精通 ] 数据库和 Eloquent 进阶 —— 在 Eloquent 模型类上使用全局作用域和局部作用域进行查询

问题引出 在通过 Eloquent 模型实现增删改查这篇教程中,我们已经学习了如何在 Eloquent 模型类中进行各种查询,但是这些查询大多需要手动调用查询构建器提供的各种方法来实现。如果有一些查询需要在多个地方调用,那么在每个地方都要编写同样的代码,有没有什么办法对这种场景下的查询代码进行优化呢? Eloquent 模型类提供的「Scope」功能就可以帮我们实现这种优化。「Scope...

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

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

[ Laravel 从入门到精通 ] 数据库和 Eloquent 进阶 —— 通过 Eloquent 模型实现批量赋值和软删除

在上一篇教程中,我们基于 Eloquent 模型实现了对数据表记录的增删改查操作,今天我们在此基础上介绍两个 Eloquent 模型提供的高级功能 —— 批量赋值和软删除。 批量赋值 批量赋值主要用于快速设置模型属性。 在介绍批量赋值之前,我们先看一个例子,之前我们新增或者修改 Eloquent 模型时都是通过依次设置每个属性来实现的: $post = new App\Post; $po...