統合BjyAuthorize
とZendナビゲーションに問題があり、解決方法がわかりません。私はこれを試してmanualとすべてうまく動作します。しかし、私はbjyauthorize.config
でガードを定義した後、ナビゲーションとガードの設定が反映されることを期待しています(拒否されたコントローラやルートはナビゲーション項目を表示しません)。私の問題は、ナビゲーションアイテムはまだ表示されているが、セクションは正しく保護されているということです。ガードをナビゲーションに反映させる方法はありますか? Module.phpZF2 Zend NavigationとBjyAuthorizeの統合
マイビューヘルパーの設定マイアプリケーション/ Module.phpビューヘルパーの設定:bjyauthorize.global.php
'guards' => array(
'BjyAuthorize\Guard\Controller' => array(
array('controller' => 'Article\Controller\Article', 'roles' => array('user')),
),
そして私のナビゲーションで
'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__);
}
私のガードの設定。 global.php
return array(
'navigation' => array(
'default' => array(
'articles' => array(
'label' => 'Articles',
'route' => 'articles',
),
),
));
私は経路を変更しようとしていますconfiモジュール/コントローラー/アクションへの継続時間はまだ有効ではありません。
アドバイスをいただきありがとうございます。問題は私がリソースを指定していないことでした。 – user1893983