Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour,
j'essaie d'ajouter des routes dynamiquement. J'ai créer une fonction dans le bootstrap appelé _initRoute. À partir de là, je lis une table qui contient les configurations des routes nécessaires. Mais ça ne fonctionne pas. J'obtient ce message d'erreur dans safari : "Trop de redirections sont survenues en tentant d'ouvrir..." Je comprends ce message. Mais pourquoi est-ce que ça fonctionne lorsque je saisie les routes manuellement, mais que ça ne fonctionne pas lorsque je le fais dynamiquement ?
Voici comment ça se présente :
protected function _initRoute() { $this->bootstrap('FrontController'); $router = $this->getResource('FrontController')->getRouter(); // Default route $router->removeDefaultRoutes(); $options = new Zend_Config_Ini(APPLICATION_PATH . '/configs/application.ini', APPLICATION_ENV); $db = Zend_Db::factory($options->get("resources")->get("db")->get("adapter"), $options->get("resources")->get("db")->get("params")); $moduleDAO = new Magellan_Model_Module($db); $result = $moduleDAO->fetchAll(); $defaultRoute = new Zend_Controller_Router_Route(':controller/:action/*', array( 'module' => '', 'controller' => 'index', 'action' => 'index', ) ); $router->addRoute('default', $defaultRoute); foreach($result as $module) { $jsonRoute = $module["Routes"]; if($jsonRoute != "") { $routes = Zend_Json::decode($jsonRoute, Zend_Json::TYPE_ARRAY); foreach($routes as $route) { $newRoute = new Zend_Controller_Router_Route(':controller/:action/*', array( 'module' => $route["module"], 'controller' => $route["controller"], 'action' => $route["action"], ) ); $router->addRoute($module["ModuleName"] . "-". $route["action"], $newRoute); } } } //Version manuel /*$loginRoute = new Zend_Controller_Router_Route(':controller/:action/*', array( 'module' => '', 'controller' => 'login', 'action' => 'login', ) ); $router->addRoute('login', $loginRoute);*/ }
Merci.
Hors ligne
Tu dois avoir des routes qui se "chevauche"
Hors ligne
Serait-ce possible d'élaborer SVP ?
Hors ligne
Pages: 1