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

traducir mensajes de error en zend form

Estas en el tema de traducir mensajes de error en zend form en el foro de Zend en Foros del Web. hola comunidad requiero su ayuda una vez mas para que me puedan colaborar en algo que no se que tan dificil sea, el como poder ...
  #1 (permalink)  
Antiguo 26/10/2012, 09:43
 
Fecha de Ingreso: mayo-2012
Ubicación: La Paz
Mensajes: 23
Antigüedad: 11 años, 11 meses
Puntos: 0
Pregunta traducir mensajes de error en zend form

hola comunidad
requiero su ayuda una vez mas para que me puedan colaborar en algo que no se que tan dificil sea, el como poder traducir los mensajes de error cuando se crea un formulario con zend form
al enviar un formulario si no cumple con las funciones de filtro y validadores muestra mensajes pero en ingles, intente resolver el problema haciendo algo que vi en otra pagina que era
copiar este codigo en el index.php de la carpeta public
Código PHP:
require_once 'Zend/Loader/Autoloader.php';
Zend_Loader_Autoloader::getInstance ();

$translator = new Zend_Translate(
                
'array',
                
'../resources/languages',
                
'es',
                array(
'scan' => Zend_Translate::LOCALE_DIRECTORY)
);
Zend_Validate_Abstract::setDefaultTranslator($translator); 
y creando una carpeta /resources/languages/es en el directorio raiz de mi aplicacion y dentro poniendo el archivo Zend_Validate.php que viene en el comprimido del framework para hacer la traduccion pero no funciona, me sigue mostrando todo en ingles
no se si afectara que tenga mi aplicacion separada en modulos, tengo dos uno "web" y otro "administrator" funcionan bien ambos , pero como dije queria hacer la traduccion de estos errores, como podria hacerlo, hay alguna otra forma?
espero me puedan ayudar saludos y gracias anticipadas pro las respuestas
  #2 (permalink)  
Antiguo 26/10/2012, 10:09
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: traducir mensajes de error en zend form

No es necesario eso, simplemente copia del directorio resources el idioma que quieres y agrega esto en tu application.ini:
Código:
resources.translate.adapter = "array"
resources.translate.locale = "es"
resources.translate.data = APPLICATION_PATH "/lang/es/Zend_Validate.php"
  #3 (permalink)  
Antiguo 28/10/2012, 10:16
 
Fecha de Ingreso: mayo-2012
Ubicación: La Paz
Mensajes: 23
Antigüedad: 11 años, 11 meses
Puntos: 0
Respuesta: traducir mensajes de error en zend form

muchas gracias gatorV funciono muy bien su solucion, ahora me sale en español, bueno a excepcion del error cuando valido un campo q sea de email, eso sigue saliendo en ingles, no se cual podria ser el problema pero gracias por la pronta respuesta y perdon por la tardanza en responder si habia funcionado o no
saludos
  #4 (permalink)  
Antiguo 28/10/2012, 18:56
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: traducir mensajes de error en zend form

Es muy raro ¿estas usando la última versión de ZF y el Zend_Validate?
  #5 (permalink)  
Antiguo 30/10/2012, 10:35
 
Fecha de Ingreso: mayo-2012
Ubicación: La Paz
Mensajes: 23
Antigüedad: 11 años, 11 meses
Puntos: 0
Respuesta: traducir mensajes de error en zend form

Cita:
Iniciado por GatorV Ver Mensaje
Es muy raro ¿estas usando la última versión de ZF y el Zend_Validate?
no ahora estoy con zend 1.12 no se los demas mensajes si salen bien pero el de email cuando coloco un campo vacio me sale en ingles, y no se a que se deberia eso
  #6 (permalink)  
Antiguo 30/10/2012, 11:10
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: traducir mensajes de error en zend form

Revisa el Zend_Validate y ve si el mensaje que te sale en inglés esta traducido.
  #7 (permalink)  
Antiguo 30/10/2012, 14:45
 
Fecha de Ingreso: mayo-2012
Ubicación: La Paz
Mensajes: 23
Antigüedad: 11 años, 11 meses
Puntos: 0
Respuesta: traducir mensajes de error en zend form

Cita:
Iniciado por GatorV Ver Mensaje
Revisa el Zend_Validate y ve si el mensaje que te sale en inglés esta traducido.
Buenas GatorV revisando el Zend_Validate tiene esto para el campo de email

Código PHP:
// Zend_Validate_EmailAddress
    
"Invalid type given, value should be a string" => "El tipo especificado no es válido, el valor debe ser una cadena de texto",
    
"'%value%' is not valid email address in the basic format local-part@hostname" => "'%value%' no es una dirección de correo electrónico válido en el formato local-part@hostname",
    
"'%hostname%' is no valid hostname for email address '%value%'" => "'%hostname%' no es un nombre de host válido para la dirección de correo electrónico '%value%'",
    
"'%hostname%' does not appear to have a valid MX record for the email address '%value%'" => "'%hostname%' no parece tener un registro MX válido para la dirección de correo electrónico '%value%'",
    
"'%hostname%' is not in a routable network segment. The email address '%value%' should not be resolved from public network." => "'%hostname%' no esta en un segmento de red ruteable. La dirección de correo electrónico '%value%' no se debe poder resolver desde una red pública.",
    
"'%localPart%' can not be matched against dot-atom format" => "'%localPart%' no es igual al formato dot-atom",
    
"'%localPart%' can not be matched against quoted-string format" => "'%localPart%' no es igual al formato quoted-string",
    
"'%localPart%' is no valid local part for email address '%value%'" => "'%localPart%' no es una parte local válida para la dirección de correo electrónico '%value%'",
    
"'%value%' exceeds the allowed length" => "'%value%' excede la longitud permitida"
por lo que vi deberia traducir bien pero no lo hace eso es lo mas raro
es asi como deberia aparecer o como?
gracias por la ayuda, saludos
  #8 (permalink)  
Antiguo 30/10/2012, 15:43
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: traducir mensajes de error en zend form

Así es, a mi me funciona bien, ¿no será que estas cambiando de alguna manera el mensaje que genera el elemento?
  #9 (permalink)  
Antiguo 30/10/2012, 15:55
 
Fecha de Ingreso: mayo-2012
Ubicación: La Paz
Mensajes: 23
Antigüedad: 11 años, 11 meses
Puntos: 0
Respuesta: traducir mensajes de error en zend form

Cita:
Iniciado por GatorV Ver Mensaje
Revisa el Zend_Validate y ve si el mensaje que te sale en inglés esta traducido.
Cita:
Iniciado por GatorV Ver Mensaje
Así es, a mi me funciona bien, ¿no será que estas cambiando de alguna manera el mensaje que genera el elemento?
no creo estar haciendo nada raro bueno asi defini el campo en mi clase de zend_form

Código PHP:
$email = new Zend_Form_Element_Text('email');
        
$email->setLabel('E-mail')
                ->
setAttrib("size"25)
               ->
setRequired(true)
               ->
addFilter('StripTags')
               ->
addFilter('StringTrim')
               ->
addValidator('EmailAddress',  TRUE  )
               ->
addValidator('NotEmpty'); 
no hay ningun error o si?
saludos

Etiquetas: resources, traduccion, zend-form, validar, translator
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 04:52.