Write the Code. Change the World.

2月 20

以前,还需要写中间件来处理邮箱是否验证过了。5.7 开始,Laravel 自带了邮箱验证的相关字段和功能。

以此基础,从零开始吧。

生成注册登录

php artisan make:auth

修改执行以下操作

修改 User 模型,使其实现 MustVerifyEmail 接口

class User extends Authenticatable implements MustVerifyEmail

启用与邮箱验证相关的路由(验证邮箱页面、重发验证邮件页面等),修改 routes/web.php

Auth::routes(['verify' => true]);

Laravel 自带了一个名为 verified 的中间件,如果一个未验证邮箱的用户尝试访问一个配置了 verified 中间件的路由,Laravel 就会提示该用户邮箱未激活。修改路由,加了一个中间件,测试看看。

Route::get('/', 'PageController@home')->name('home')->middleware('verified');

访问首页,发现会跳转到验证邮箱的页面了。证明邮箱验证生效。

看看 users 表,我们发现和以前比,多了一个 email_verified_at 字段。

激活邮箱

我们可以临时使用 MailHog 来模拟邮箱激活。

MailHog 是 Homestead 自带的一个组件,可以很方便地调试发送邮件。直接使用端口号 8025 就可以访问到。那么,怎么让其接受到邮件呢。修改 .env 文件。将 host 和 port 修改成下边的即可。

MAIL_HOST=127.0.0.1
MAIL_PORT=1025

修改完毕,刷新 mailhog 页面。点击首页链接,会跳转到验证页面。发送验证,查看邮箱,点击激活。再访问首页是不是就可以访问了。再看看数据库,会发现 email_verified_at 字段以及有值(日期时间)了。

2月 13

安装 laravel mix

Laravel Mix 一款前端任务自动化管理工具,使用了工作流的模式对制定好的任务依次执行。Mix 提供了简洁流畅的 API,让你能够为你的 Laravel 应用定义 Webpack 编译任务。Mix 支持许多常见的 CSS 与 JavaScript 预处理器,通过简单的调用,你可以轻松地管理前端资源。

使用 Mix 很简单,首先你需要使用以下命令安装 npm 依赖即可。我们将使用 Yarn 来安装依赖,在这之前,因为国内的网络原因,我们还需为 Yarn 配置安装加速:

继续阅读