Когда я вызываю контроллер "users", он выдает мне эту ошибку:
**Fatal error:** Uncaught exception 'Zend_Acl_Exception' with message 'Resource 'error' not found' in /home/zerego/library/Zend/Acl.php:364
Stack trace:
#0 /home/zerego/library/Zend/Acl.php(774): Zend_Acl->get('error')
#1 /home/zerego/application/plugins/AccessCheck.php(25): Zend_Acl->isAllowed('normal', 'error', 'error')
#2 /home/zerego/library/Zend/Controller/Plugin/Broker.php(309): My_Plugin_AccessCheck->preDispatch(Object(Zend_Controller_Request_Http))
#3 /home/zerego/library/Zend/Controller/Front.php(941): Zend_Controller_Plugin_Broker->preDispatch(Object(Zend_Controller_Request_Http))
#4 /home/zerego/library/Zend/Application/Bootstrap/Bootstrap.php(97): Zend_Controller_Front->dispatch()
#5 /home/zerego/library/Zend/Application.php(366): Zend_Application_Bootstrap_Bootstrap->run()
#6 /home/zerego/public_html/index.php(26): Zend_Application->run()
#7 {main} thrown in /home/zerego/library/Zend/Acl.php on line 364
Мой документ acl отлично работает с другими контроллерами и выглядит так:
<?php
$acl = new Zend_Acl();
$roles = array('admin', 'normal');
// Controller script names. You have to add all of them if credential check
// is global to your application.
$controllers = array('error', 'auth', 'index', 'paginator', 'albums', 'users');
foreach ($roles as $role) {
$acl->addRole(new Zend_Acl_Role($role));
}
foreach ($controllers as $controller) {
$acl->add(new Zend_Acl_Resource($controller));
}
// Here comes credential definiton for admin user.
$acl->allow('admin'); // Has access to everything.
// Here comes credential definition for normal user.
$acl->allow('normal'); // Has access to everything...
$acl->deny('normal', 'albums'); // ... except the admin controller.
// Finally I store whole ACL definition to registry for use
// in AuthPlugin plugin.
$registry = Zend_Registry::getInstance();
$registry->set('acl', $acl);
?>