小编use*_*983的帖子

ZF2将BjyAuthorize与Zend\Navigation集成

我有集成BjyAuthorize和Zend导航的问题,不知道如何解决它们.我试试这本手册,一切正常.但我预计当我在其中定义警卫时bjyauthorize.config,我的导航和警卫配置之间会有反映(拒绝控制器或路线不显示导航项).我的问题是导航项仍然显示,但部分被正确保护.有什么办法,如何将警卫反映到导航中?我在Module.php中查看帮助程序配置

我的Application/Module.php视图助手配置:

'mainMenu' => function($sm){
                $nav = $sm->get('navigation')->menu();
                $serviceLocator = $sm->getServiceLocator();
                $acl = $serviceLocator->get('BjyAuthorize\Service\Authorize')->getAcl();
                $role = $serviceLocator->get('BjyAuthorize\Service\Authorize')->getIdentity();
                $nav->setAcl($acl);
                $nav->setRole($role); // Todo replace
                $nav->setUseAcl();
                return $nav->setUlClass('nav')->setTranslatorTextDomain(__NAMESPACE__); 
            }
Run Code Online (Sandbox Code Playgroud)

我的守卫配置在bjyauthorize.global.php

'guards' => array(
    'BjyAuthorize\Guard\Controller' => array(
        array('controller' => 'Article\Controller\Article', 'roles' => array('user')),
),
Run Code Online (Sandbox Code Playgroud)

还有我的navigation.global.php

return array(
    'navigation' => array(
       'default' => array(
           'articles' => array(
                'label' => 'Articles',
                'route' => 'articles',
            ),
        ),
    ));
Run Code Online (Sandbox Code Playgroud)

我尝试将路由配置更改为模块/控制器/操作,但仍然无法正常工作.

navigation zend-framework2

5
推荐指数
2
解决办法
3437
查看次数

标签 统计

navigation ×1

zend-framework2 ×1