0

我正在尝试创建嵌套角色,其中开发人员是可以访问所有控制器/操作的角色,这是我的家谱布局:

 'role_providers'        => array(

        'BjyAuthorize\Provider\Role\Config' => array(
            'guest'  => array('children' => array(

                'programador' => array(
                    'children'=>array(
                        'administration'=>array('children'=>array('developer'=>array())),
                    )
                ),
                'conclidiador' => array(
                    'children'=>array(
                        'administration'=>array('children'=>array('developer'=>array())),
                    )
                ),
                'tesorero' => array(
                    'children'=>array(
                        'administration'=>array('children'=>array('developer'=>array())),
                    )
                ),
            )),
        ),
 ),

这不起作用。

如果我只留下一个,它会很好用。

    'role_providers'        => array(

        'BjyAuthorize\Provider\Role\Config' => array(
            'guest'  => array('children' => array(

                'programador' => array(
                    'children'=>array(
                        'administration'=>array('children'=>array('developer'=>array())),
                    )
                ),     
            )),
        ),
    ),

我希望开发人员能够访问所有内容,然后是管理,然后是同一级别的其他程序,conclidiador,tesorero,最后是访客。

4

1 回答 1

0

我正在尝试类似的事情,但在配置文件中有不同的风格:

'BjyAuthorize\Provider\Role\Config' => [
            'guest' => [],
            'user'  => ['children' => [
                'admin' => [],
                'member' => ['children' => [
                    'membervip' => []
                ]],
                'merchant' => ['children' => [
                    'merchantvip'   => []   
                ]],
                'player' => ['children' => [
                    'playerplus'    => []   
                ]]
            ]],
        ],

我还必须调整表 'user_role' 以对应于上述布局/配置具有正确的 'user_role'.'parent_id' 值如上

因此,我假设你需要这样的东西:

'BjyAuthorize\Provider\Role\Config' => [
            'guest' => [],
            'user'  => ['children' => [
                'programador' => [],
                'conclidiador' => [],
                'tesorero' => [],
                'administrator' => ['children' => [
                   'developer' => []
                 ]]
            ]],
        ],

那是父“用户”与所有人具有相同的级别。然后在您的路由/控制器守卫中定义该级别的权限。'user' 是对所有子角色的基本访问权限,然后拆分在 'administrator' 中

于 2015-07-15T03:06:02.440 回答