如何在 laravel 8 中使用预先存在的表(但表名 Users_system 而不是 Users)创建自定义身份验证,并且该表(Users_system)充满数据并且没有与 Laravel 的用户相同的字段?
答案 0 :(得分:0)
您的数据库中不必具有相同的字段。如果要为新表创建新模型,请创建 UserSystem 模型并将所有 App\User
实例替换为 App\UserSystem
模型。
如果您想使用现有模型,只需更改 App\User
模型中的表名。
如果您有不同的用户名或任何身份验证凭据,则需要将 Illuminate\Foundation\Auth\AuthenticatesUsers
类代码移至 App\Http\Controllers\Auth\LoginController
。
以下是您需要更改的代码段。
protected function validateLogin(Request $request)
{
$request->validate([
$this->username() => 'required|string',
'password' => 'required|string',
]);
}
protected function credentials(Request $request)
{
return $request->only($this->username(), 'password');
}
//Mention your username here
public function username()
{
return 'user_name';
}