Laravel - Остановить автоматический вход после подтверждения по электронной почте - PullRequest
0 голосов
/ 07 мая 2019

В Laravel по умолчанию, когда пользователь подтверждает свою электронную почту, пользователь автоматически входит в систему.Я хочу изменить это поведение по умолчанию, чтобы пользователь не входил в систему автоматически.

Может кто-нибудь подсказать, пожалуйста, как это сделать?

Спасибо.

1 Ответ

0 голосов
/ 07 мая 2019

Если вы видите VerficationController laravel, используйте черту use VerifiesEmails;, которая фактически проверяет пользователя и перенаправляет на дом.Следовательно, он trait надеется, что вы знаете его концепцию.

Вы можете перезаписать эту функцию, переписав этот метод снова в вашем контроллере VerificationController.

Метод, выполняющий перенаправление: verify.Все, что вам нужно сделать, это правильно выполнить следующий код в вашем контроллере (VerificationController)

public function verify(Request $request)
    {
        if ($request->route('id') != $request->user()->getKey()) {
            throw new AuthorizationException;
        }

        if ($request->user()->hasVerifiedEmail()) {
            return redirect($this->redirectPath());
        }

        // markEmailAsVerified() is updating your database
        if ($request->user()->markEmailAsVerified()) {
           //here do what ever you want to do.
            event(new Verified($request->user()));
        }

        // simply redirect to login here
        return redirect()->route('Login')->with('message','Your email is successfully verified. Please Login Here');
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...