现在我的应用程序正在使用gridview列出所有信息,并且它也有分页。当用户单击分页编号然后单击编辑然后保存。它将用户重定向到查看页面。我想做什么来将用户重定向到上一页(带分页号的网址)。
答案 0 :(得分:99)
您可以使用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。
答案 1 :(得分:9)
Here它说检查referrer
是否设置在第一位是一个好习惯。
因此,如果您使用以下代码,如果设置了referrer,您将被重定向到最后一页,如果之前未设置返回URL,则会被重定向到您配置的homeUrl
。
return $this->goBack((!empty(Yii::$app->request->referrer) ? Yii::$app->request->referrer : null));
答案 2 :(得分:1)
@Kostas说的是真的,但是我认为如果只编写以下代码会更好,因为goBack已经考虑到goBack HOME已经有一个空参数。
return $this->goBack(Yii::$app->request->referrer);
我对其进行了测试,并且效果很好。