2012-04-04 2 views
2

Zend_Form에서 title 속성을 설정할 때, 번역되지 않습니다. (라벨 & 오류가 잘 번역)Zend_Form setAttrib title이 Zend_Translate로 번역되지 않습니다.

// 형태의 파일

$email = new Zend_Form_Element_Text('username'); 
$email->setLabel('auth.form.login.username') 
     ->setRequired(true) 
     ->addFilter('StripTags') 
     ->addFilter('StringTrim') 
     ->addFilter('StringToLower') 
     ->addValidator('NotEmpty') 
     ->setAttrib('title', 'auth.form.login.username'); 

// 리소스 파일

... 
<tu tuid='auth.form.login.username'> 
    <tuv xml:lang="en"><seg>Username</seg></tuv> 
</tu> 
... 

현재 결과 : auth.form.login.username

예상 결과 : 사용자 이름

+0

setter 속성이 변환 된 것을 기억할 수 없습니다. 기대가 잘못된 것 같습니다. 대신 번역 된 값을 설정하십시오. – hakre

답변

1

이것은 정상적인 동작이며 아무런 문제가 없습니다.

다음과 같이 당신이 Zend_Translate 어댑터를 사용할 필요가 있으므로, 그 값 매개 변수를 번역하지 않습니다 setAttrib() 방법 :

$email->setAttrib('title', $this->getTranslator()->translate('auth.form.login.username'))

이 당신의 문제를 해결해야한다.

자세한 내용은 Standard I18n Targets을 참조하십시오.

이제 번역 객체를 첨부 했으므로 정확히 번역이 가능합니까?

  • 유효성 검사 오류 메시지
  • 레이블.
  • 필드 집합 범례.
  • 형태 및 요소 설명.
  • 다중 옵션 값.
  • 제출 및 단추 레이블.
+0

감사합니다. 완벽하게 작동했습니다. 나는 설명서에서 이것을 보지 못했습니까? –

관련 문제