je exemple suivant 2 Running a Zend Framework action from command line et je frappe une erreur fatalefonction Bootstrap _initRouter() brise mes itinéraires personnalisés
Fatal error: Zend_Controller_Router_Exception: Route logout is not defined
avec un itinéraire personnalisé et navigation que je définis dans application.ini comme
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"
Je l'ai réduit la cause de l'erreur vers le bas à cette fonction bootstrap:
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());
}
}
W Que fais-je mal ici? L'erreur n'est présente que si vous n'utilisez pas CLI (et si je supprime le _initRouter() cela fonctionne comme prévu).