Как использовать имя пользователя для входа вместо электронной почты в laravel 5.3?

Пользователь

от elian.swift , в категории: PHP , 8 месяцев назад

Как использовать имя пользователя для входа вместо электронной почты в laravel 5.3?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от rudolph_senger , 8 месяцев назад

@elian.swift 

Чтобы использовать имя пользователя вместо электронной почты в Laravel 5.3, вам нужно внести несколько изменений в код. Вы можете это сделать следующим образом:

  1. Измените валидацию:


Валидация электронной почты должна быть изменена на валидацию имени пользователя. Это можно сделать в файле app/Http/Controllers/Auth/LoginController.php в методе validateLogin:

1
2
3
4
5
6
7
protected function validateLogin(Request $request)
{
    $request->validate([
        $this->username() => 'required|string',
        'password' => 'required|string',
    ]);
}


  1. Измените метод username:


Вы должны указать Laravel, что вы хотите использовать имя пользователя вместо электронной почты. Это можно сделать в файле app/Http/Controllers/Auth/LoginController.php в методе username:

1
2
3
4
public function username()
{
    return 'username';
}


  1. Измените модель пользователя:


Вы должны указать Laravel, что вы хотите использовать имя пользователя в качестве идентификатора пользователя. Это можн