包含用户脚手架的php代码,Laravel 6 – 使用Laravel 6的用户认证“脚手架”

1. 创建laravel 6项目

在工作目录下执行如下命令,通过composer创建laravel项目。

composer create-project --prefer-dist laravel/laravel blog "6.*"

该命令会在当前工作目录下生成blog项目目录。整个目录结构如下,关于laravel项目目录结构的说明可以参考Laravel Docs

5a82e0dce9c329a26a13af6c8027dc0b.png

然后使用php artisan serve 启动网站服务,或者配置nginx来运行网站。

初始的网站只有两个路由,可以通过命令php artisan route:list 来检查路由。

默认路由/,只是一个静态的欢迎页面。

eae56892fe85c64c359499f085c33e36.png

API路由/api/user,出错了,原因是刚刚初始的laravel项目还没有安装laravel/ui。laravel/ui就是在laravel version 6之后单独拎出来的用户认证“脚手架”。它提供了用于基本用户认证控制器、模型、视图等代码。

ccbc27afe371517efb13b5eca936d392.png

2. 下载laravel/ui

执行命令:composer require laravel/ui:^1.0 --dev

注意要laravel framework 6只支持版本1的laravel/ui,所以这里必须加上版本限制,--dev可加可不加。

这个命令只是修改了根目录下的composer.json与composer.lock文件(还有下载laravel/ui包到/vendor目录下,并修改了/vendor/composer/autoload_*.php文件,追加了Laravel\Ui命名空间的自动加载。不过默认的git是不追踪vendor目录的^_^)

e99aa5225fe23239becd9efc480bd733.png

3. 使用laravel/ui的用户认证“脚手架”

执行命令:php artisan ui vue --auth

该命令自动为我们生成了控制器HomeController.php(认证相关的控制器本来就有),在routes/web.php生成新的路由信息,生成认证页面的模版文件,生成认证页面的静态文件(js, sass, vue这些)

10decdaa32b7d958b00c8159b4461705.png

6cde09fdeb367026270fd0124cecbf65.png

这时候访问网站首页,会发现右上角多了两个按钮LOGIN与REGISTER。点击LOGIN或者REGISTER就能进入登录或者注册页面。但是此时页面排版是混乱的,因为没有真正的静态文件js与css。刚刚生成的静态文件其实是在/resources目录下预处理前的静态文件,还需要用npm生成真正的静态文件并放到/public目录下才行。

da4350387cc5f7fe6e81aa97fe43c58f.png

4. 下载npm依赖包

执行命令:npm install

该命令会在项目根目录下新建目录/node_modules,将JavaScript依赖包下载到该目录中。同时生成/package-lock.json文件。

5. 生成前端静态文件

执行命令:npm run dev

该命令会生成项目真正的前端静态文件。这时候再刷新登录/注册页面就会发现页面正常了。

17e23ee9921f92479f320decd50d7e3e.png

部署到生产环境的话,应该用: npm run production 。可以有效减小生成的app.js与app.css的文件大小。

6. 配置数据库

虽然登录/注册页面看起来正常了,但是此时我们还没有配置网站的数据库连接,也还没生成用户表。

6.1 配置数据库连接

修改/.env文件中的数据库连接配置。

6cbe123d0b277005b253c71f94489933.png

6.2 自动生成数据库表

执行命令:php artisan migrate

该命令会根据/database/migrations目录下的几个migrate文件自动创建表。其中migrations表使用来记录migrate动作的。

08c79d944e097ebe45dd61fd006a7f56.png

此后就可以正常的使用用户登录/注册功能了。

7. 配置邮件发送服务

此时如果想使用默认的重置密码页面,就得先配置Laravel的邮件发送服务。

以使用网易个人邮箱的smtp服务为例,去网易邮箱的设置页面开启POP3/SMTP服务,这时会给你一个授权码,这个授权码就第三方邮件服务登录网易邮箱的密码(而不是用你自己的用户登录密码)。所以修改/.env文件中的MAIL配置如下:

73447d1fc200bd1e75ec90ad8db3e82c.png

MAIL_USERNAME就是网易邮箱的用户名

MAIL_PASSWORD就是刚刚得到的授权码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值