Zend Framework Модуль доступа - PullRequest
       0

Zend Framework Модуль доступа

0 голосов
/ 22 февраля 2012

Я создал модуль с именем Admin и создал администратора контроллера через Zend Tool.и добавил следующий код в загрузчик

protected function _initAutoLoad ()
{
    $front = Zend_Controller_Front::getInstance();
    $front->setControllerDirectory(array(
                            'default' => APPLICATION_PATH . '/default/controllers' ,
                            'Admin'   => APPLICATION_PATH . '/Admin/controllers'
                                  ));
    $autoloader = Zend_Loader_Autoloader::getInstance();
    $autoloader->suppressNotFoundWarnings(false);
}

Но если я получаю доступ к http://localhost/zf_hemr/Admin url, я получаю сообщение об ошибке "Не найдено".если я получаю доступ к "http://localhost/zf_hemr/public/Admin" url, я получаю следующую ошибку:

Page not found
Exception information:

Message: Invalid controller specified (index)
Stack trace:

#0 D:\web\www\zf_hemr\library\Zend\Controller\Front.php(954):     Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http),     Object(Zend_Controller_Response_Http))
#1 D:\web\www\zf_hemr\library\Zend\Application\Bootstrap\Bootstrap.php(97): Zend_Controller_Front->dispatch()
#2 D:\web\www\zf_hemr\library\Zend\Application.php(366): Zend_Application_Bootstrap_Bootstrap->run()
#3 D:\web\www\zf_hemr\public\index.php(26): Zend_Application->run()
#4 {main}  

Request Parameters:

array (
  'module' => 'Admin',
  'controller' => 'index',
  'action' => 'index',
)  

Не могли бы вы сообщить мне, где я ошибся?

1 Ответ

0 голосов
/ 22 февраля 2012

Вы, вероятно, забыли добавить /modules к своим путям:

$front->setControllerDirectory(array(
                              'default' => APPLICATION_PATH . '/modules/default/controllers',
                              'Admin'   => APPLICATION_PATH . '/modules/Admin/controllers'
                              ));

Однако вам не нужно этого делать, правильный способ сделать это для меня - добавить эти строки в вашФайл configuration.ini:

resources.modules[] =
resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
resources.frontController.prefixDefaultModule = false

Первая строка включает плагин ресурсов Zend_Application_Resource_Modules, который позаботится обо всем за вас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...