Я создаю приложение Laravel 5.8, и у меня есть существующее приложение, пользователи которого зарегистрированы в таблице SQL. Я могу подключиться к SQL, поэтому файлы .env верны, но мне нужны настраиваемые поля в процессе аутентификации. Я проверил онлайн-руководства, но многое изменилось с 5.6 или более старых версий, использованных в руководствах, до 5.8. Может кто-нибудь помочь мне выяснить сначала, как изменить поле имени пользователя на «имя пользователя» вместо «электронная почта», я уже пытался переопределить функцию в app \ Controllers \ Auth \ LoginController.php, но это просто говорит: «Эти учетные данные делают не соответствует нашим записям. " в разделе ошибок. Моя текущая таблица 'users_custom' содержит следующие поля:
- id (UNIQUE, int (5))
- имя пользователя (varchar (100))
- пароль (varchar (100)) Примечание. Это более старый пароль в кодировке md5. Мне также нужна помощь с хэш-форматом Laravel без необходимости повторного ввода паролей, если это возможно.
- passphrase (varchar (200)) // Это было сделано для DialogFlow в более ранней версии. Это не должно быть доступно / проверено laravel.
Мое приложение не работает с электронной почтой пользователя, поэтому это поле отсутствует в моей таблице пользователей. Я определил protected $table='users_custom';
в модели Users.
РЕДАКТИРОВАТЬ: Решено
Не знаю, как, но когда я начал заново с контроллерами Auth по умолчанию и моделью User, я просто изменил имя таблицы на protected $table = users_custom
, и добавил public function username() { return 'username'; }
в LoginController, и теперь он работает.