简体   繁体   English

无法获得用户权限yii2

[英]Failing to get user permissions yii2

I'm triying to make certain menu items visible for users that have specific permissions but so far i have failed, what im doing is this: 我试图使某些菜单项对具有特定权限的用户可见,但是到目前为止,我失败了,我在做什么:

    function(){                                                
                if(Yii::$app->user->can('abrir caja'))
                {
                  return true;                                                    
                }
                  else
                  {
                   return false;
                  }                                                
     }

But im failing to get the user permissions is what i'm thinking, my question is how can i get the current user permissions? 但是我想获取用户权限失败,我的问题是如何获取当前用户权限? I have already checked that my users have their respective roles and permissions assigned. 我已经检查过我的用户是否已分配了各自的角色和权限。

You can use the getPermissionsByUser() method. 您可以使用getPermissionsByUser()方法。 Example: 例:

$userId = Yii::$app->user->getId();
var_dump(Yii::$app->authManager->getPermissionsByUser($userId));

I've managed to fix it by doing next: 我已经设法通过下一步解决它:

    function conseguirPermisos($nombreP){

                $idUsuario = Yii::$app->user->getId();

                $permisos=Yii::$app->authManager->getPermissionsByUser($idUsuario);

                if (\yii\helpers\ArrayHelper::getValue($permisos, $nombreP)) {

                    return true;

                } 
                    else {

                            return false;

                    }
            }

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM