打开应用的路由 .. 要去定义这个 verification.resend 路由 .. 用一下 Route .. post ... 地址是 users/verification/resend .. . 使用 VerificationController 里的 resend 方法来处理 .. 给它起个名字 .. 可以是 verification.resend ..
然后打开 VerificationController 控制器 ... 在这里得去添加一个 resend 方法 .. 方法里面需要用到一些东西 .. request .. response .. session .. 还有 auth ..
里面先添加一个 user .. 它的值是 auth.user .. 就是当前登录的用户 ..
然后可以删除掉用户相关的验证数据 .. await user.verification().delete() ..
下面生成一个新的 verification ... 用一下 user 模型上的 generateVerification 这个方法 ...
发送的邮件跟注册新用户以后发送的验证邮件是一样的 .. 打开 User 控制器 ... 复制一下它的 store 方法里面这段发送邮件的代码 ..
把它们粘贴到这个 resend 方法里面 ... 再 flash 一条信息 ... type 是 success .. message 是 We send a verification email to ,加上 user 的 email .
再做一次重定向 ... redirect .. back ..
然后在文件的顶部 .. 导入需要的 Mail .. use 一下 Mail ... 还需要一个 Env ...
试验
再去试一下 ..
在用户帐户的设置界面上,按一下这个 Resend verification email. 提示了一个错误 ...
因为这个 user 上的 verification 应该是个方法 ..
再回来试一下 ...
提示已经发送了验证邮件 ..
找到发送的这个验证邮件 ... 复制一下验证链接地址 .. 访问一下它 ..
会提示已经验证了用户邮件 ..
再回到数据库客户端 ... 看一下 users 表 .. 刚才完成了验证的用户,它的 is_verified 的值,现在变成了 1 ...