2015-02-17 19 views
21

Bây giờ ứng dụng của tôi đang sử dụng GridView để liệt kê tất cả thông tin và nó cũng có pagination.when người dùng nhấp vào số pagination và sau đó nhấp vào chỉnh sửa và sau đó lưu. Nó chuyển hướng người dùng để xem trang. Những gì tôi muốn làm điều đó để chuyển hướng người dùng đến trang trước (url với số pagination).Yii2 chuyển hướng đến trang trước

Trả lời

77

Bạn có thể sử dụng Yii::$app->request->referrer để trả lại trang cuối cùng mà người dùng đã truy cập.

Cách sử dụng rất đơn giản:

return $this->redirect(Yii::$app->request->referrer); 

Bạn cũng cần phải đưa vào tài khoản mà referrer có thể null:

return $this->redirect(Yii::$app->request->referrer ?: Yii::$app->homeUrl); 

Xem the docs.

+0

dụ thứ hai có thể được rút ngắn xuống còn 'trở $ this-> redirect (Yii :: $ cấp ứng dụng> request-> giới thiệu: Yii :: $ cấp ứng dụng> homeUrl); ' – cronfy

6

Here nó nói rằng bạn nên kiểm tra xem referrer có được đặt ở vị trí đầu tiên không. Vì vậy, nếu bạn sử dụng mã sau, bạn sẽ được chuyển hướng đến trang cuối cùng nếu liên kết giới thiệu được đặt hoặc thành cấu hình homeUrl nếu URL trả về không được đặt trước đó.

return $this->goBack((!empty(Yii::$app->request->referrer) ? Yii::$app->request->referrer : null)); 

goBack() details

redirect details

Các vấn đề liên quan