嗨,这是我的用户模型结构,
'name' => 'required|max:255',
'phone' => 'required|numeric',
'email' => 'required|email|max:255|unique:users',
这是Profile模型的结构
'username' => 'required|max:255',
'password' => 'required|min:6|confirmed',
我需要保持这种结构并使用用户名和密码登录,因为某些用户无法登录并且不能使用用户名和密码。
我将Auth更改为此
public function create(array $data)
{
$user = User::create([
'email' => $data['email'],
'phone' => $data['phone'],
]);
$user->profile()->create(['name' => $data['name'],'password' =>bcrypt($data['password'])]);
return $user;
}
现在我该如何登录:| ?我知道需要更改此文件的登录方法,laravel\vendor\laravel\framework\src\Illuminate\Foundation\Auth\AuthenticatesUsers.php
但我不知道有什么更改
如果您需要在注册后立即登录,请执行以下操作:
Auth::attempt($data['name'], $data['password']);
如果您只想登录用户,则可以覆盖Illuminate\Auth\SessionGuard@attempt
method,但是可以使用Auth::login
if ($request->login == $loginFromDB && Hash::check($request->password, $passwordFromDB)) {
Auth::login($user, true); // User must be an User model instance
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句