2011-04-29 57 views
0

可以說我有一個簡單的表格:如何爲Zend_Dojo_Form元素設置本地化?

class Form_Simple extends Zend_Dojo_Form 
{ 
    public function init() { 
    $this->addElements(array(
     new Zend_Dojo_Form_Element_ValidationTextBox('name', array(
     'required' => true, 
     'label'  => 'Name:' 
    )) 
    } 
} 

「name」元素是必需的,錯誤信息將是「這個字段是必須的」。如何更改此消息?

回答

0

您可以像在應用程序的任何其他部分一樣本地化表單標籤。

在您的引導文件中,您必須設置Zend_LocaleZend_Translate對象。它可以在你的整個應用程序中使用。

在你的自舉

E.g:

//init locale 
     $translate = new Zend_Translate('gettext', 
         APPLICATION_PATH.'/languages',null, 
         array('scan' => Zend_Translate::LOCALE_FILENAME)); 

     $locale = new Zend_Locale(); 
     $locale->setLocale(Zend_Locale::BROWSER); 
     $requestedLanguage = key($locale->getBrowser()); 

     if(in_array($requestedLanguage, $translate->getList())){ 
      $language = $requestedLanguage; 
     }else{ 
      $language = 'en'; 
     } 

     $translate->setLocale($language); 
     $view->translate = $translate; 

由於設置真的是細緻和複雜的,也許我建議你看這個教程http://www.youtube.com/watch?v=FwPgqla-cRk