Laravel 5.4 Перенаправление сброса пароля аутентификации на основе адреса электронной почты - PullRequest
0 голосов
/ 21 марта 2019

Я участвую в веб-сайте, использующем Laravel 5.4 и использующем встроенную аутентификацию.

Я добавил ссылку «Забыли пароль», которая показывает ResetPasswordController @ showLinkRequestForm, который отправляет пароль по электронной почте сбросить ссылку при отправке, а затем ResetPasswordController @ showResetForm перенаправляет на страницу входа при отправке.

У меня проблема в том, что у нас есть два разных пользователя - клиенты и администраторы. У меня есть возможность определить, какой который через зарегистрированный адрес электронной почты, но я хочу перенаправление после сброса пароля будет отличаться для каждого типа (client = '/' и admin = '/ admin'). Как это сделать?

1 Ответ

1 голос
/ 21 марта 2019

Если вы используете черту ResetsPasswords в вашем контроллере, вы можете создать свой собственный метод redirectTo(), который будет вызываться для перенаправления пользователя:

// import the needed trait
use Illuminate\Foundation\Auth\ResetsPasswords;

class YourResetPasswordController {
    // use the needed trait
    use ResetsPasswords;

    // override the method that redirects the user
    public function redirectTo()
    {
        if (auth()->user()->isAdmin()) {
            return redirect('/admin');
        } else {
            return redirect('/');
        }
    }
}

Дайте мне знать, помогло ли оно вам:)

...