Я следовал примеру 2 в Выполнении действия Zend Framework из командной строки , и я столкнулся с фатальной ошибкой
Fatal error: Zend_Controller_Router_Exception: Route logout is not defined
с пользовательским маршрутом и навигацией, которые я определяю в приложении.ini as
resources.router.routes.logout.route = logout
resources.router.routes.logout.defaults.controller = authentication
resources.router.routes.logout.defaults.action = logout
resources.navigation.pages.logout.label = "Logout"
resources.navigation.pages.logout.controller = "authentication"
resources.navigation.pages.logout.action = "logout"
resources.navigation.pages.logout.route = "logout"
resources.navigation.pages.logout.resource = "logout"
Я сузил причину ошибки до этой функции начальной загрузки:
protected function _initRouter ()
{
if (PHP_SAPI == 'cli') {
$this->bootstrap ('frontcontroller');
$front = $this->getResource('frontcontroller');
require_once APPLICATION_PATH. '/router/Cli.php';
$front->setRouter (new Application_Router_Cli ());
$front->setRequest (new Zend_Controller_Request_Simple ());
}
}
Что я здесь не так делаю?Ошибка присутствует, только когда CLI не используется (и если я удаляю _initRouter (), она работает как положено).