yii2 在控制器验证权限报错
程序员文章站
2022-05-10 20:04:18
...
rbac 权限能正常验证 但是在控制器里验证的时候 抛出异常
控制器里的代码是这样的
控制器里的代码是这样的
public function beforeAction($action) {
$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('你没有操作权限');
}
}
到页面上的时候就显示这样提示没有操作权限, 数据库里添加了对应的$controller.'_'.$action的数据...........
回复内容:
rbac 权限能正常验证 但是在控制器里验证的时候 抛出异常
控制器里的代码是这样的
public function beforeAction($action) {
$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('你没有操作权限');
}
}
到页面上的时候就显示这样提示没有操作权限, 数据库里添加了对应的$controller.'_'.$action的数据...........
数据里写真实的地址比如:
'/'.$controller.'/'.$action
你输出一下 $controller.'_'.$action
这个变量,我自己使用的使用在父类下面,
Yii::$app->controller->id和 Yii::$app->controller->action->id 是个null
推荐阅读
-
YII2框架中使用RBAC对模块,控制器,方法的权限控制及规则的使用示例
-
yii2 在控制器中验证请求参数的使用方法
-
asp.net MVC 在Controller控制器中实现验证码输出
-
YII2框架中使用RBAC对模块,控制器,方法的权限控制及规则的使用示例
-
在使用邮箱验证码的时候报错Please enter your authorization code to login. More information in http://service.mail.
-
asp.net MVC 在Controller控制器中实现验证码输出功能
-
vue需要被缓存的组件在登录权限验证拦截,登录完成后没有加载数据,只需要获取一次数据(问题解决)
-
在控制器中调用验证器-2018年5月28日17点
-
YII2的rbac一个权限怎么设置规则和验证啊?
-
Yii2在modules中添加验证码的方法