Laravel 5.7 用户验证电子邮件未在注册时发送 | 珊瑚贝

Laravel 5.7 user verification email not sending at registrations time


我刚刚从 5.6 升级到 5.7,并严格按照说明进行操作。注册时,电子邮件不会立即发送。但是,当单击消息重新发送它时,它会起作用。在注册时发送电子邮件实际上是一项功能吗?或者我是否需要手动添加一个功能。

  • Laravel 的哪个确切版本有这个错误?请。
  • 你说的对!很高兴知道!


我检查了来源,它似乎没有在注册时自动发送。但是,您可以轻松更改该行为。

在 app\\Http\\Controllers\\Auth\
egisterController 中,您的 create() 方法应该如下所示。假设您已遵循此处记录的所有其他步骤,这应该可以工作。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/**
 * Create a new user instance after a valid registration.
 *
 * @param  array  $data
 * @return \\App\\User
 */
protected function create(array $data)
{
    $user = User::create([
        ‘name’ => $data[‘name’],
        ’email’ => $data[’email’],
        ‘password’ => Hash::make($data[‘password’]),
    ]);

    $user->sendEmailVerificationNotification();

    return $user;
}

  • 未定义路由 [verification.verify]。
  • 好的,我添加了 Auth::routes([verify => true]),现在问题 Route [verification.verify] not defined. 消失了,验证电子邮件通过了,但是新用户登录时没有提示验证电子邮件。
  • 感谢 Mozammil,这个解决方案应该是对 Laravel 的拉取请求 :),简单而流畅,并且是新注册的预期行为。
  • 它不能是一个拉取请求,它不是 laravel 的一部分,它是你项目的一部分。


来源:https://www.codenong.com/54057868/

微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?