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

url dentro de helper - Zend Framework

Estas en el tema de url dentro de helper - Zend Framework en el foro de Zend en Foros del Web. Que tal amigos, tengo este problema, he hecho un helper para redirigir mediante un link, al idioma que el visitante elija, aunque en realidad el ...
  #1 (permalink)  
Antiguo 29/12/2009, 06:06
 
Fecha de Ingreso: febrero-2009
Mensajes: 218
Antigüedad: 15 años, 8 meses
Puntos: 9
url dentro de helper - Zend Framework

Que tal amigos, tengo este problema, he hecho un helper para redirigir mediante un link, al idioma que el visitante elija, aunque en realidad el problema son las urls.
Como ven lo quise hacer con el metodo url de la vista en el helper (no se si se puede hacer).
La solucion fue hacerlo como una url comun y corriente y allí no tuve problema, pero me queda la duda como armar una url dentro de un helper y que se vea en la vista.
Código PHP:
class Mi_Helper_Idioma extends Zend_View_Helper_Abstract{
    
    public function 
idioma(){
        
        
$request Zend_Controller_Front::getInstance();
        
        
        
$modulo $request->getRequest()->getModuleName();
        
$controller=$request->getRequest()->getControllerName();
        
$action=$request->getRequest()->getActionName();
        
        echo
"<a href=/en/".$modulo."/".$controller."/".$action.">English</a><br>"//funciona ok
        
echo"<a href=/fr/".$modulo."/".$controller."/".$action.">France</a><br>"//funciona ok
        
        
$vista=new Zend_View();
        echo
"<a href=".$vista->url(array('module' => $modulo'controller' => $controller'action' => $action)).">Idioma</a>"//No funciona
    
}
    } 
No sé porque no funciona la url armada con el método url(), si alguien me puede decir que estoy haciendo mal se lo agradecería.

Gracias amigos y feliz año.
  #2 (permalink)  
Antiguo 29/12/2009, 06:36
 
Fecha de Ingreso: noviembre-2007
Ubicación: Lanus, Buenos Aires
Mensajes: 178
Antigüedad: 17 años
Puntos: 14
Respuesta: url dentro de helper - Zend Framework

En un view helper accedes a la vista con $this->view

Código PHP:
class Mi_Helper_Idioma extends Zend_View_Helper_Abstract
     
    public function 
idioma(){ 
         
        
$request Zend_Controller_Front::getInstance(); 
         
         
        
$modulo $request->getRequest()->getModuleName(); 
        
$controller=$request->getRequest()->getControllerName(); 
        
$action=$request->getRequest()->getActionName();       

        echo
"<a href=".$this->view->url(array('module' => $modulo'controller' => $controller'action' => $action)).">Idioma</a>";     
 } 
    } 
Saludos!
  #3 (permalink)  
Antiguo 29/12/2009, 16:28
 
Fecha de Ingreso: febrero-2009
Mensajes: 218
Antigüedad: 15 años, 8 meses
Puntos: 9
Respuesta: url dentro de helper - Zend Framework

Hola Rodrigo, muchas gracias.
Ahora en el mismo tema me surgió otro problema y no entiendo a que se debe.
En el sitio en el que estoy trabajando cree un virtualhost y cuando en la barra de direcciones escribo :
h t t p : / / mistio

las url que formo con el metodo url() quedan vacias, o sea no me direccionan a los controllers y actions que le pido sino que se quedan en el index porque en la url solo aparece una barra "/", si entro por otros medios a algun action, allí si las url se completan y me direccionan a las direcc. que le solicito.
Espero que se entienda la explicación, si alguien sabe porque ocurre esto, le agradecería que me lo aclare.
Saludos.
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:27.