我是Zend Framework的新手,我正在尝试使用它构建一个小型网站。因此,为了构建CMS,我在作者Forrest Lyman的Apress网站上找到了一个源代码。我也从当地市场买了这本书。
我想单独使用管理模块,所以我创建了管理模块但是我遇到了问题,因为我无法访问除IndexController之外的控制器。当我尝试访问管理模块中的其他控制器时,我收到此错误:
致命错误:未捕获异常'Zend_Acl_Exception',在C:\ Server \ Zend \ ZendServer \ share \ ZendFramework \ library \ Zend \ Acl.php中找不到消息'资源'类别':365堆栈跟踪:#0 C :\ Server \ Zend \ ZendServer \ share \ ZendFramework \ library \ Zend \ Acl.php(846):Zend_Acl-> get('category')#1 C:\ Server \ Zend \ Apache2 \ htdocs \ cms \ library \ CMS \ Controller \ Plugin \ Acl.php(52):Zend_Acl-> isAllowed('administrator','category','index')#2 C:\ Server \ Zend \ ZendServer \ share \ ZendFramework \ library \ Zend \ Controller \ Plugin \ Broker.php(309):CMS_Controller_Plugin_Acl-> preDispatch(Object(Zend_Controller_Request_Http))#3 C:\ Server \ Zend \ ZendServer \ share \ ZendFramework \ library \ Zend \ Controller \ Front.php(941): Zend_Controller_Plugin_Broker-> preDispatch(Object(Zend_Controller_Request_Http))#4 C:\ Server \ Zend \ ZendServer \ share \ ZendFramework \ library \ Zend \ Application \ Bootstrap \ Bootstrap.php(97):Zend_Controller_Front-> dispatch()#5 C:\服务器\ Zend的\ ZendServer对其进行访问\共享\ ZendFramework \库\ Zend的\ Application.ph p(366):第312行的C:\ Server \ Zend \ ZendServer \ share \ ZendFramework \ library \ Zend \ Controller \ Plugin \ Broker.php中的Zend_Application_Bootstrap_Bootstrap-> run()#6
答案 0 :(得分:1)
我找到了解决方案..
制作控制器后,我必须在Acl.php文件中添加资源,该文件位于(library / CMS / Controller / Plugin /)中。 只需在添加资源部分
中添加此项 $acl->add(new Zend_Acl_Resource('category'));
然后你可以访问它。
感谢。