Laravel 5.6 Auth из двух разных таблиц - PullRequest
0 голосов
/ 14 октября 2018

Я хотел бы спросить о входе в Laravel, но другим способом: информация о пользователе, включая пароль, но не адрес электронной почты, будет сохранена в users table, а адрес электронной почты будет сохранен в email_addresses table с логическим полем.звонил is_default.

Таким образом, пользователь может иметь несколько электронных писем, но он может войти в систему только с одним электронным письмом, которое имеет is_default, равное true.и он мог изменить свою электронную почту по умолчанию через свой профиль.

Итак, как мне сделать процесс входа в систему через фасад Auth :: login ().

Я смог зарегистрировать пользователя с помощьюхранение информации в users table и сохранение его email_address and is_default = true в email_addresses table.

1 Ответ

0 голосов
/ 14 октября 2018

Это может быть немного сложно.Auth::login() просто нужно получить электронную почту и пароль, поэтому, если вы можете обмануть модель, полагая, что поле электронной почты доступно через $user->email, все получится:

public function getEmailAttribute()
{
  return DB::table('email_addresses')->whhere('default', 1)->where('user_id', $this->id)->first()->toArray()['email'];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...