0
我想導航只顯示Acl允許的項目,但是我在導航和Acl之間存在問題 - 當我這樣做時,就像在互聯網上的official example或some other resources中所示,我的導航仍顯示全部像沒有Acl的物品。將Zend_Acl和Zend_Navigation鏈接起來
在引導,我做:
$view->navigation()->setContainer($container);
$view->navigation()->setAcl($acl)->setRole("1");
其中:
- $視圖是Zend_View的對象
- $容器是Zend_Navigation對象
- $ ACL是Zend_Acl中對象
我有t他初始導航數組的設置應該是這樣,acl和導航對象也很好,幷包含他們應該包含的內容,所以我不會在這裏發佈它們。
目前,我們得到它的工作使用結構,如:
if(!$acl->isAllowed(/* auth data, controller, action */)) {
unset(/* this page from pages array */);
}
但這並不漂亮,不喜歡在正式例如一個班輪。
我的問題是什麼是最有可能我的問題在這裏,什麼是最常見的問題和錯誤,而開發商與Zend_Acl中結合Zend_Navigation做什麼呢?
也許我可以找到一個解決方案,這可以幫助其他開發人員遇到問題。
附加問題是關於setRole(「1」) - 目前我傳遞角色的id給它,因爲角色數組只包含id。那是setRole()的正確用法嗎? – bogatyrjov