rbac 권한은 정상적으로 검증이 가능하지만, 컨트롤러에서 검증하면 예외가 발생합니다.
컨트롤러의 코드는 이렇습니다
공개 함수 beforeAction($action) {
<code>$controller = Yii::$app->controller->id; //获取控制器 $action = Yii::$app->controller->action->id; //获取方法 if(Yii::$app->user->can($controller.'_'.$action)){ return true; }else{ throw new \yii\web\UnauthorizedHttpException('你没有操作权限'); }</code>
}
해당 페이지로 이동하면 작업 권한이 없다는 메시지가 표시됩니다. 해당 $controller.'_'.$action 데이터가 데이터베이스에 추가되었습니다...
rbac 권한은 정상적으로 검증이 가능하지만, 컨트롤러에서 검증하면 예외가 발생합니다.
컨트롤러의 코드는 이렇습니다
공개 함수 beforeAction($action) {
<code>$controller = Yii::$app->controller->id; //获取控制器 $action = Yii::$app->controller->action->id; //获取方法 if(Yii::$app->user->can($controller.'_'.$action)){ return true; }else{ throw new \yii\web\UnauthorizedHttpException('你没有操作权限'); }</code>
}
해당 페이지로 이동하면 작업 권한이 없다는 메시지가 표시됩니다. 해당 $controller.'_'.$action 데이터가 데이터베이스에 추가되었습니다...
데이터에 실제 주소를 쓰세요. 예:
'/'.$controller.'/'.$action
출력합니다 $controller.'_'.$action
이 변수는 상위 클래스인
Yii::$app->controller->id 및 Yii::$app->controller->action에서 직접 사용합니다. ->id가 null입니다