Foros del Web » Programando para Internet » PHP » Zend »

Problema con router - Zend Framework

Estas en el tema de Problema con router - Zend Framework en el foro de Zend en Foros del Web. Que tal amigos, tengo este problema a ver si me pueden ayudar, porque no he podido solo. He hecho un router en una aplicacion con ...
  #1 (permalink)  
Antiguo 17/01/2010, 12:31
 
Fecha de Ingreso: octubre-2009
Mensajes: 240
Antigüedad: 14 años, 6 meses
Puntos: 6
Problema con router - Zend Framework

Que tal amigos, tengo este problema a ver si me pueden ayudar, porque no he podido solo.
He hecho un router en una aplicacion con ZF.
Código PHP:
protected function _initRoutes()
    {
    
$frontController Zend_Controller_Front::getInstance();
    
$router $frontController->getRouter();
    
//$router->removeDefaultRoutes();
    
$router->addRoute(
      
'rutero',
      new 
Zend_Controller_Router_Route(
      
'/moduno/:mes/:anio',
      
        array(
'module'=> 'moduno',
              
'controller' => 'index',
              
'action'=> 'ruteando',
              
'mes'=>'agosto',
              
'anio'=>'1988'
        
)
      )
    );

Como ven tengo un modulo "moduno", el problema que en el mismo modulo tengo otros controllers y actions y cuando llamo a uno de esos controllers, me lo agarra como si fuera parte del router.

Ejemplo:
http://www.miproyecto.com/moduno/otr...er/otro_action
agarra a otro_controller como 'mes' y otro_action como 'anio'.

Como se pordría solucionar esto? Desde ya gracias.
  #2 (permalink)  
Antiguo 18/01/2010, 08:42
Avatar de emiliodeg  
Fecha de Ingreso: septiembre-2005
Ubicación: Córdoba
Mensajes: 1.830
Antigüedad: 18 años, 7 meses
Puntos: 55
Respuesta: Problema con router - Zend Framework

esta funcionando correctamente, el problema esta en tu logica, ya q todo lo q venga depsus de moduno siempre sera anio, y luego siempre sera mes, probablemente tu solucion sea utiliar zend_controller_router_regex o cambiar la sintaxis y envez de utilizar moduno en la idreccion utilizar otra tipo "calendario" o lo q fuere

Código PHP:
Ver original
  1. new Zend_Controller_Router_Route(
  2.       '/calendario/:mes/:anio',
  3. /*el resto igual*/

para el regex seria algo asi
Código PHP:
Ver original
  1. new Zend_Controller_Router_Regex(
  2. '/moduno/(enero|febrero|marzo|....**el resto de los meses**)/([0-9]+',
  3. array('module'=> 'moduno',
  4.               'controller' => 'index',
  5.               'action'=> 'ruteando',
  6.               '1'=>'agosto',
  7.               '2'=>'1988'
  8.         ),
  9. array(1=>'anio',2=>'mes'),
  10. '/moduno/%s/%d'
  11.  )
  12. );

bueno espero te sirva la ayuda
__________________
Degiovanni Emilio
developtus.com

Etiquetas: framework, router
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:47.