Browse Source

added web\Controller::goBack() as shortcut

goBack() will redirect user to his returnUrl
fixes #925
tags/2.0.0-beta
Carsten Brandt 11 years ago
parent
commit
2c30ddfcb0
  1. 2
      apps/basic/controllers/SiteController.php
  2. 13
      framework/yii/web/Controller.php

2
apps/basic/controllers/SiteController.php

@ -61,7 +61,7 @@ class SiteController extends Controller
{ {
$model = new LoginForm(); $model = new LoginForm();
if ($model->load($_POST) && $model->login()) { if ($model->load($_POST) && $model->login()) {
return $this->goHome(); return $this->goBack();
} else { } else {
return $this->render('login', array( return $this->render('login', array(
'model' => $model, 'model' => $model,

13
framework/yii/web/Controller.php

@ -146,6 +146,19 @@ class Controller extends \yii\base\Controller
} }
/** /**
* Redirects the browser to the last visited page.
* @param string|array $defaultUrl the default return URL in case it was not set previously.
* If this is null and the return URL was not set previously, [[Application::homeUrl]] will be redirected to.
* Please refer to [[User::setReturnUrl()]] on accepted format of the URL.
* @return Response the current response object
* @see User::getReturnUrl()
*/
public function goBack($defaultUrl = null)
{
return Yii::$app->getResponse()->redirect(Yii::$app->getUser()->getReturnUrl($defaultUrl));
}
/**
* Refreshes the current page. * Refreshes the current page.
* This method is a shortcut to [[Response::refresh()]]. * This method is a shortcut to [[Response::refresh()]].
* @param string $anchor the anchor that should be appended to the redirection URL. * @param string $anchor the anchor that should be appended to the redirection URL.

Loading…
Cancel
Save