我使用php artisan make:auth和laravel MustVerify使成员系统正常工作。
我想从
更改laravel注册电子邮件验证系统“注册->登录-> 验证电子邮件”到“注册->验证电子邮件->登录”
默认laravel验证系统为:
用户点击注册按钮后。
用户自动登录系统
显示验证页
我想要的是:
用户点击注册按钮。
用户必须先验证电子邮件,然后才能登录系统
我该怎么做。
答案 0 :(得分:0)
我认为一种简单的方法是向用户添加一个名为active
或verified
的字段。如果用户未验证他们的电子邮件,则将不允许他们登录系统(这可以通过使用您自己的登录功能来轻松实现)。这样,用户在验证电子邮件并将该字段设置为true之前无法访问系统。如果您不想删除用户而宁愿停用它们,这也对以后有所帮助。
答案 1 :(得分:0)
在Http \ Controllers \ Auth \ RegisterController.php中,将此代码插入顶部
use Illuminate\Http\Request;
use Illuminate\Auth\Events\Registered;
并通过简单地将此代码写入您的RegisterController.php
来覆盖RegistersUsers特征中的 register 方法。public function register(Request $request)
{
$this->validator($request->all())->validate();
event(new Registered($user = $this->create($request->all())));
// $this->guard()->login($user);
return $this->registered($request, $user)
?: redirect($this->redirectPath());
}
注意注释的代码。这是用户注册后自动登录的地方。
答案Laracasts中已经提供