Laravel学习日记2018-07-03

今天内容

  • 使用迁移为数据表新增字段;
  • 通过事件监听来做一些操作;
  • 在 Laravel 应用使用邮件发送功能;
  • 在本地调试邮件发送功能;
  • 通过邮件发送注册链接来激活用户;
  • 通过注册邮件来找回密码;

迁移

今天进一步理解migrate 命令。他的作用很强大,他说运行在artisan上的,结合migrate文件,直接对数据库进行操作,而且可以回滚。
一般对步骤:
1.建立迁移文件

$ php artisan make:migration add_activation_to_users_table --table=users

由于我们进行的是字段添加操作,因此在命名迁移文件时需要加上前缀,遵照如 add_column_to_table 这样的命名规范

2.为新增文件添加字段

 /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::table('users', function (Blueprint $table) {
            $table->string('activation_token')->nullable();
            $table->boolean('activated')->default(false);
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::table('users', function (Blueprint $table) {
            $table->dropColumn('activation_token');
            $table->dropColumn('activated');
        });
    }

3.运行迁移命令将字段增加到数据表

$ php artisan migrate

激活流程

1.用户注册成功后,自动生成激活令牌;
2.将激活令牌以链接的形式附带在注册邮件里面,并将邮件发送到用户的注册邮箱上;
3.用户点击注册链接跳到指定路由,路由收到激活令牌参数后映射给相关控制器动作处理;
4.控制器拿到激活令牌并进行验证,验证通过后对该用户进行激活,并将其激活状态设置为已激活;
5.用户激活成功,自动登录;

密码重设流程

1.用户点击重设密码链接并跳转到重设密码页面;
2.在重设密码页面输入邮箱信息并提交;
3.控制器通过该邮箱查找到指定用户并为该用户生成一个密码令牌,接着将该令牌以链接的形式发送到用户提交的邮箱上;
4.用户查看自己个人邮箱,点击重置密码链接跳转到重置密码页面;
用户在该页面输入自己的邮箱和密码并提交;
5.控制器对用户的邮箱和密码重置令牌进行匹配,匹配成功则更新用户密码;

这里的细节逻辑还不是非常理解,大概就是Laravel封装好了,直接参考使用就得了。

你可能感兴趣的:(Laravel学习日记2018-07-03)