1
我有一些導航和acl的問題,說權限不被尊重在菜單中。 我有一個XML配置文件與菜單。在我引導我initiliaze菜單如下:zend導航部分與acl不工作
protected function _initNavigationXml() {
$this->bootstrap('layout');
$layout = $this->getResource('layout');
$view = $layout->getView();
$config = new Zend_Config_Xml(APPLICATION_PATH . '/configs/navigation.xml');
$navigation = new Zend_Navigation($config);
$view->navigation($navigation)->setAcl($this->_acl)->setRole($this->_auth->getIdentity()->role);
}
由於菜單的特殊格式我有一個部分PHTML文件,以顯示它,如:
<?php
$partial = array('sidemenu.phtml', 'default');
$this->navigation()->menu()->setPartial($partial);
echo $this->navigation()->menu()->renderPartial();
?>
菜單顯示良好,但資源不受尊重。前$部分
添加以下
echo $this->navigation()->menu()->renderMenu();
,菜單是正確的,並且資源得到尊重。
任何幫助或進一步的問題可以理解的;)
問候
安德烈
謝謝你的回答, 這似乎不是邏輯,但我讀了acl在renderPartial中丟失.... 你有沒有一個關於如何在控制器中這樣做的例子,因爲我只需要菜單中的我的應用程序的儀表板? Regards – cwhisperer 2012-01-04 14:55:28
可能最容易在代碼中查找'Zend_View_Helper_Navigation_Menu-> renderMenu()',它調用'_renderMenu()',然後使用'Zend_View_Helper_Navigation_HelperAbstract-> accept()'檢查頁面是否應該顯示。 – ChrisA 2012-01-04 15:32:13
@ChrisAnstey +1謝謝你,你的迴應幫了我很多忙,用ACL來構建renderPartial方法。 – Marecky 2013-02-02 18:23:12