我有一个navigation.xml
文件:
<?xml version="1.0" encoding="UTF-8"?>
<config>
<nav>
<programm_nav>
<label></label>
<uri>#</uri>
<pages>
<all>
<label>test1</label>
<resource>default:programme</resource>
<module>default</module>
<controller>programme</controller>
<action>list</action>
<privilege>index</privilege>
</all>
</pages>
</programm_nav>
<acc_nav>
<label></label>
<uri>#</uri>
<pages>
<ueb>
<label>test2</label>
<resource>default:account</resource>
<module>default</module>
<controller>account</controller>
<action>index</action>
<privilege>index</privilege>
</ueb>
</pages>
</acc_nav>
</nav>
</config>
该配置文件定义了两个导航框,一个是 programm_nav,另一个是 acc_nav。
在我的引导程序中,我执行以下操作:
$navContainerConfig = new Zend_Config_Xml ( APPLICATION_PATH .
'/configs/navigation.xml', 'nav');
$navContainer = new Zend_Navigation ( $navContainerConfig );
$view->navigation ( $navContainer )->setAcl ( $this->_acl )
->setRole ( Zend_Registry::get ( 'role' ) );
在我看来,我显示导航:
$navSec = $this->navigation ()->findOneByLabel ( 'acc_nav' );
echo $this->navigation ()->menu ()->renderMenu ( $navSec );
但无论我如何定义$navSec
,我总是显示programm_nav
而不是另一个框。acc_nav
从不显示。
任何的想法?