无需电子邮件业务的Laravel身份验证

时间:2019-10-25 13:19:20

标签: php laravel

我是Laravel的新手。我刚刚学习了如何通过发出命令来使Laravel创建身份验证基础结构:

php artisan make:auth

对我来说,它工作得很好,但我想使身份验证过程尽可能简单,因此我想消除与电子邮件有关的所有事情。最终,我希望用户仅输入用户名和密码来注册并进行身份验证。因此,不需要电子邮件业务,也不需要重置密码。

为了摆脱电子邮件的麻烦,标准Laravel身份验证代码中应该进行哪些更改?

我将寄存器控制器修改为此:

class RegisterController extends Controller {
    use RegistersUsers;
    protected $redirectTo = '/home';

    public function __construct()
    {
        $this->middleware('guest');
    }

    protected function validator(array $data)
    {
        return Validator::make($data, [
            'name' => ['required', 'string', 'max:255'],
            'username' => ['required', 'string', 'max:255', 'unique:users'],
            'password' => ['required', 'string', 'min:8', 'confirmed'],
        ]);
    }

    protected function create(array $data)
    {
        return User::create([
            'name' => $data['name'],
            'username' => $data['username'],
            'password' => Hash::make($data['password']),
        ]);
    }
}

迁移看起来像这样:

public function up()
{
    Schema::create('users', function (Blueprint $table) {
        $table->bigIncrements('id');
        $table->string('name');
        $table->string('username')->unique();
        $table->string('password');
        $table->rememberToken();
        $table->timestamps();
    });
}

但是当我尝试注册时,没有任何反应。用户表中没有任何条目。怎么了?

0 个答案:

没有答案