Traduzir as Mensagens de Erro do Zend_Form para português pt_BR
Uma dos recursos mais poderosos do Zend Framework, o Zend_Forms possui uma vasta biblioteca para utilização de formulários, incluindo marcação filtros e validação. Neste artigo vou apresentar uma dica rápida para quem deseja utilizar os validadores e traduzir as suas mensagens de erro para o português do Brasil (pt_BR).
De forma rápida, os validadores de um formulário entram em ação quando um campo do formulário é preenchido incorretamente. Ao submeter o formulário incorretamente os validadores informam a presença dos erros através de uma mensagem que é renderizada abaixo do campo referente. Toda a programação e validação está a cargo do Zend Framework e o programador precisa somente informar quais validadores devem ser utilizados.
Inicialmente devemos baixar o arquivo de tradução do Zend_Validate, (que também pode ser encontrado na pasta “resources/languages” caso você tenha efetuado o download do zend via http://framework.zend.com/download/latest) .
Após o download , crie na sua pasta application a estrutura de pastas (languages/pt_BR) [2 pastas Doh!] e copie o arquivo Zend_Validate.php para dentro desta pasta.
Por fim no seu arquivo Bootstrap.php, insira o seguinte método.
protected function _initTranslate()
{
try {
$translate = new Zend_Translate('Array', APPLICATION_PATH . '/languages/pt_BR/Zend_Validate.php', 'pt_BR');
Zend_Validate_Abstract::setDefaultTranslator($translate);
} catch(Exception $e) {
die($e->getMessage());
}
}
Dica rápida: ao iniciar o metodo com o prefixo (_init) ele será automaticamente chamado em seu bootstrap.
Dessa forma todas as mensagens de erros de seus formulários serão exibidas no idioma português.
Portfolios de Profissionais
Twitter Dellanio
-
I'm at Vox Tecnologia (João Pessoa) http://t.co/hJvkFG3A
-
I'm at I2P w/ 2 others http://t.co/xj4Eyp36
-
Apple gera mais receita em um dia do que o Twitter fatura em um ano inteiro - Notícias - TechTudo http://t.co/kRW2tWkn
-
Problema com PDO do PostgreSqlno Wamp Server - http://t.co/xcjESQaW
-
Symantec informa que código-fonte de antimalware foi roubado pelo Anonymous http://t.co/2HsK40lM


