Laravel 5.7 未发送验证邮件
Laravel 5.7 No Verification Email sent
当我注册用户,或点击'click here to request another'时,没有发送验证邮件,虽然它回复'A fresh verification link has been sent to your email address. '。我检查了我的 .env
和 config/mail.php
文件,并成功地用 tinker 和 Mail::Send(...)
测试了它们。我还遵循 laravel documentation 并尝试了一些解决方案,这些解决方案在 Whosebug 上进行了讨论。
- 我的
User
扩展了 Authenticatable,实现了 MustVerifyEmail 并使用了 Notifiable
- 我的 'RegisterController' 在
create function
中显式调用 $user->sendEmailVerificationNotification()
- 已将
Auth::routes(['verify' => true]);
添加到 web.php
我假设标准 sendEmailVerificationNotification
实施有问题,但我对 Laravel 太陌生了,无法找出问题所在。
感谢您的帮助!
我发现了我的错误:
我用我自己的用户 class 换出了 User
。邮件地址的列名是mail_address,与默认的列名不同。因此,我将此覆盖添加到我的 User
:
public function routeNotificationForMail($notification)
{
return $this->email_address;
}
当我注册用户,或点击'click here to request another'时,没有发送验证邮件,虽然它回复'A fresh verification link has been sent to your email address. '。我检查了我的 .env
和 config/mail.php
文件,并成功地用 tinker 和 Mail::Send(...)
测试了它们。我还遵循 laravel documentation 并尝试了一些解决方案,这些解决方案在 Whosebug 上进行了讨论。
- 我的
User
扩展了 Authenticatable,实现了 MustVerifyEmail 并使用了 Notifiable - 我的 'RegisterController' 在
create function
中显式调用 - 已将
Auth::routes(['verify' => true]);
添加到 web.php
$user->sendEmailVerificationNotification()
我假设标准 sendEmailVerificationNotification
实施有问题,但我对 Laravel 太陌生了,无法找出问题所在。
感谢您的帮助!
我发现了我的错误:
我用我自己的用户 class 换出了 User
。邮件地址的列名是mail_address,与默认的列名不同。因此,我将此覆盖添加到我的 User
:
public function routeNotificationForMail($notification)
{
return $this->email_address;
}