Laravel: хитрое перенаправление после входа в систему - PullRequest
1 голос
/ 28 мая 2020

Мое приложение сначала делает запрос в веб-службу, чтобы получить пользователя из ERP. Если пользователи существуют в базе данных ERP, я регистрирую их в своей базе данных, чтобы получить к ним доступ позже. Из-за процедуры WS мой код выглядит так:

public function login(Request $request)
    {
        $credentials = $this->credentials($request);
        $login = $credentials[$this->username()];
        $cpfCnpjHigienizado = str_replace('-', '', str_replace('/', '', (str_replace('.', '', $request->cpfCnpj))));
        $credenciais = User::where('cpfCnpj', '=', $cpfCnpjHigienizado)->first();
        if ($credenciais) { // Se já estiver cadastro, vai pra home
            return redirect(route('home'));
        } else {
        // do the Soap connection
}

Хорошо, поэтому, если пользователь зарегистрирован в моей БД, он переходит на домашнюю страницу и ему не нужно снова выполнять тяжелое Soap соединение.

Это нормально работает. Теперь проекту необходимо отправить электронное письмо предварительно зарегистрированному пользователю, например:

@component('mail::button', ['url' => env('APP_URL') .'/SobeDocsFiadorCadastrado/'. $fiador->id ])
Clique para iniciar
@endcomponent

Теперь этот пользователь должен сначала войти в систему, а затем перейти к URL-адресу электронной почты. Но вместо этого он переходит на домашнюю страницу. Как я могу заставить это работать? Я что-то не так делаю?

Заранее спасибо

1 Ответ

0 голосов
/ 28 мая 2020

Вот как перенаправить на другой маршрут по имени маршрута и передаче электронной почты в качестве параметра:

return redirect()->route('new_route_name', ['email' => 'set email here']);

Проверьте это для получения дополнительной информации: https://laravel.com/docs/7.x/redirects

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...