Zend权限RBAC /错误调用类

时间:2018-09-13 15:52:02

标签: php zend-framework3 rbac

我正在使用Zend-framework 3开发一个需要用户角色管理的应用程序。我正在使用 zend-permission-rbac 组件执行此操作。

但是我一直出错:

文件: /home/myhost/ppvc/module/User/src/Service/RbacManager.php:77

消息: 找不到类“ Zend \ Permissions \ Rbac \ Rbac”

如果可以帮助,这是堆栈跟踪的一部分:

  • /home/myhost/ppvc/module/User/src/Service/RbacManager.php(116):User \ Service \ RbacManager-> init()
  • /home/myhost/ppvc/module/User/src/Controller/Plugin/AccessPlugin.php(25):User \ Service \ RbacManager-> isGranted(NULL,'user.manage',Array)
  • [内部功能]:User \ Controller \ Plugin \ AccessPlugin-> __ invoke('user.manage')

当我第一次将我的Rbac容器设置为空时,会弹出此错误:

  public function init($forceCreate = false)
{
    if ($this->rbac!=null && !$forceCreate) {
        // Already initialized; do nothing.
        return;
    }

    // If user wants us to reinit RBAC container, clear cache now.
    if ($forceCreate) {
        $this->cache->removeItem('rbac_container');
    }

    // Try to load Rbac container from cache.
    $result = false;
    $this->rbac = $this->cache->getItem('rbac_container', $result);
    if (!$result)
    {
        // Create Rbac container.
        $rbac = new Rbac();
        $this->rbac = $rbac;
.....

我也在正确地调用我的Rbac类:

use Zend\Permissions\Rbac\Rbac;

我无法理解此错误的出处,看来该应用程序未“读取” vendor / zend-permissions-rbac文件夹。 我已经更新了 composer.json composer.lock 文件并进行了检查,我的模块被正确称为(composer.json):

"zendframework/zend-permissions-rbac": "^3.0",

我正在关注本教程:Role-Based Access Control

欢迎任何帮助! (对不起,如果我犯了错误,英语不是我的语言)

编辑:我已经检查了我的PHP版本是否有返回类型声明(因为Rbac模块已装满它),但是我处于7.2,所以没问题。

马克西姆

0 个答案:

没有答案