Теперь мое приложение использует gridview для отображения всей информации, а также имеет разбиение на страницы. Когда пользователь нажимает номер страницы и затем нажимает на редактирование, а затем сохраняет. Он перенаправляет пользователя на просмотр страницы. Что я хочу сделать, чтобы перенаправить пользователя на предыдущую страницу (url с номером страницы).Yii2 перенаправление на предыдущую страницу
21
A
ответ
77
Вы можете использовать Yii::$app->request->referrer
, который возвращает последнюю страницу, на которой был пользователь.
Использование прост:
return $this->redirect(Yii::$app->request->referrer);
Вы должны также принимать во внимание, что referrer
может быть null
:
return $this->redirect(Yii::$app->request->referrer ?: Yii::$app->homeUrl);
См the docs.
6
Here В нем говорится, что это хорошая практика, чтобы проверить, установлено ли на первом месте referrer
. Итак, если вы используете следующий код, вы будете перенаправлены на последнюю страницу, если настроен реферер, или ваш сконфигурированный homeUrl
, если URL-адрес возврата не был установлен ранее.
return $this->goBack((!empty(Yii::$app->request->referrer) ? Yii::$app->request->referrer : null));
Второй пример может быть сокращен до 'вернуть $ this-> перенаправлять (Yii :: $ app-> request-> ссылающаяся: Yii :: $ app-> homeUrl); ' – cronfy