首页 > 解决方案 > 更改 Laravel 中的默认登录名

问题描述

我是 Laravel 和 php 的初学者。我在我的项目 Laravel 6 中使用。

我有这个迁移:

Schema::create('users', function (Blueprint $table) {
            $table->id();
            $table->string('name');
            $table->string('email')->unique();
            $table->timestamp('email_verified_at')->nullable();
            $table->string('password');
            $table->char('enable', 1)->default(0);
            $table->rememberToken();
            $table->timestamps();
        });

如何更改 Laravel 的默认登录名,使其允许 enable = 1 的用户登录(enable = 0 - 我们不允许,类似于密码错误的用户)

标签: phplaravel

解决方案


根据关于手动验证用户的Laravel 文档enabled,您可以使用此代码对字段设置为trueonly 的用户进行身份验证。

$email = $request->input('email');
$password = $request->input('password');

if (Auth::attempt(['email' => $email, 'password' => $password, 'enabled' => 1])) {
   // The user is active, not suspended, and exists.
}

推荐阅读