在Controller的Init方法里无法获得当前Action

在controller的init方法里无法获得当前action,请问应该怎样解决?

因为无法获取action的ID,只好重写beforeAction,变通的解决一下




	protected function beforeAction($action){

		//检测当前的action是否需要验证

		$exists=in_array($action->id,$this->allowAction());

		//如果不存在

		if (!$exists) {

			//检测用户是否登录

			if (Yii::app()->user->getIsGuest()) {

				//Ajax请求

				if (Yii::app()->request->isAjaxRequest) {

					Message::ajaxInfo("请先登录",0);

					//其他请求

				}else{

					$this->redirect($this->createUrl("login/login"));

					exit();

				}

			}

		}

		//return parent::beforeAction($action);

	}