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

Problema con Zend_Controller_Router y Zend_View_Helper

Estas en el tema de Problema con Zend_Controller_Router y Zend_View_Helper en el foro de Zend en Foros del Web. Buenas a todos. Hoy he empezado a utilizar el Zend_Controller_Router para tener url más amigables en mi tienda virtual. En el Bootstrap.php tengo esto: Código ...
  #1 (permalink)  
Antiguo 24/04/2012, 12:31
 
Fecha de Ingreso: junio-2011
Ubicación: Granada
Mensajes: 19
Antigüedad: 13 años, 5 meses
Puntos: 0
Problema con Zend_Controller_Router y Zend_View_Helper

Buenas a todos.

Hoy he empezado a utilizar el Zend_Controller_Router para tener url más amigables en mi tienda virtual.

En el Bootstrap.php tengo esto:

Código PHP:
protected function _initRouter(){
        
//Enrutamientos
        
$controller Zend_Controller_Front::getInstance();
        
$router $controller->getRouter();        
        
$router->addRoute('colchones', new Zend_Controller_Router_Route('colchones.html',array('controller' => 'articulo','action' => 'listado','familia','0201')));
    } 
Todo parecía estar funcionando correctamente, es decir, accedía a http://mitiendavirtual.com/colchones.html y se enrutaba bien a http://mitiendavirtual.com/articulo/listado/familia/0201 sacándome un listado de artículos, pero todos los usos que hago del Zend_View_Helper del tipo:

Código PHP:
$this->url(array('controller'=>'articulo''action'=>'ficha''id'=>'id'),'',true); 
están generando una url incorrecta. Concretamente http://mitiendavirtual.com/colchones.html
  #2 (permalink)  
Antiguo 24/04/2012, 16:27
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 10 meses
Puntos: 845
Respuesta: Problema con Zend_Controller_Router y Zend_View_Helper

Que tal aluckyar,

El parametro que estas pasando vacio deberia ser el nombre del router para generar la url, en el caso que muestras deberia ser default y comprueba los parámetros que estas pasando id no debería ser el id de algún registro ?, algo así:

Código PHP:
Ver original
  1. $this->url(array('controller' => 'articulo', 'action' => 'ficha', 'id' => $record->getId()), 'default', true);

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #3 (permalink)  
Antiguo 25/04/2012, 10:09
 
Fecha de Ingreso: junio-2011
Ubicación: Granada
Mensajes: 19
Antigüedad: 13 años, 5 meses
Puntos: 0
Respuesta: Problema con Zend_Controller_Router y Zend_View_Helper

Ok, efectivamente era eso.

En el ejemplo anterior había puesto 'id'=>'id' a proposito para intentar hacerlo lo más genérico posible, pero para evitar confusiones lo copio tal y como lo tengo ahora.

Mi código quedaría así:

Código PHP:
$this->url(array('controller'=>'articulo''action'=>'ficha''id'=>$articulo->id),'default',true); 

El tema está en que, aunque funciona, no me queda claro para que sirve el 2 parámetro= 'default'. He estado buscando en el manual del Zend_view_helper y tampoco es que haya mucho.

Gracias.
  #4 (permalink)  
Antiguo 25/04/2012, 10:54
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Respuesta: Problema con Zend_Controller_Router y Zend_View_Helper

El segundo parámetro es la ruta a usar, al usar 'default' le dices al URL ViewHelper, que ruta usar.

Saludos.

Etiquetas: Ninguno
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 06:15.