Exebeche
@Exebeche
Осваиваю программирование

Как после авторизации оставить пользователя на текущей странице?

Собрал авторизацию в модалке, но после нажатия пепекидывает на главную, а хотелось бы оставить на текущей.
По идее goBack должно вернуть, но...
Как такое можно сделать в Yii2?
Контроллер:
public function actionAjaxLogin() {
        if (Yii::$app->request->isAjax) {
            $login = new LoginForm();
            if ($login->load(Yii::$app->request->post())) {
                if ($login->login()) {
                    return $this->goBack();
                } else {
                    Yii::$app->response->format = yii\web\Response::FORMAT_JSON;
                    return \yii\widgets\ActiveForm::validate($login);
                }
            }
        } else {
            throw new HttpException(404 ,'Page not found');
        }
    }
  • Вопрос задан
  • 43 просмотра
Решения вопроса 1
webinar
@webinar Куратор тега Yii
Учим yii: https://youtu.be/-WRMlGHLgRg
return $this->redirect(Yii::$app->request->referrer)

Но надо убедится что нет переадресаций, так как в Yii::$app->request->referrer может оказаться совершенно не очевидный url.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы