我编写了一个带有 predispatch() 方法的插件来检查每个控制器请求的访问权限。我将插件制作为:
类 My_Plugin_Checklogin 扩展 Zend_Controller_Plugin_Abstract { public function preDispatch() {
if (isset($_SESSION['Zend_Auth_Static'])) {
//no login
$request = $this->getRequest();
//the request
$request->setModuleName('default');
$request->setControllerName('index');
$request->setActionName('index');
//send to default/login/index
}
}
}
它现在在每个控制器请求之前调用 predispatch() 。
但也不允许我登录。由于预调度方法,总是让我留在登录页面上。我必须如何设置预调度方法。
请帮忙。