2014-09-23 1 views
0

내 응용 프로그램의 일부 폼을 심포니 폼으로 변환하려고합니다. 나는 빈 값을 갖고 싶고 빈 값은 각각 '월' '일' '년'이어야하는 생일 값을 가지고 있으며 지역에 따라 번역 된 버전을 표시 할 것입니다. 지금 나는 나뭇 가지로 이것을 시도하고있다. 나뭇 가지에 symfony 폼에 trans 값을 추가하는 방법

{{ form_row(form.birthday, {'empty_value':{ 'year':'title.year'|trans, 'month':'title.month'|trans, 'day':'title.day'|trans }}) }} 

하지만 난 여전히 필드를 기본 값으로 '1월' '1' '1894'보고 있어요으로 그 작동하지 않았다.

이 난 형태를 정의하는 방법입니다

->add(
    'birthday', 
    'birthday', 
    [ 
     'label' => false, 
     'required' => true, 
     'attr' => [ 
     'class' => 'date-fields' 
     ] 
    ] 
) 

나뭇 가지에서이 작업을 수행 할 수있는 방법이 아니면 내가 내 양식에 번역기를 통과하고 거기에 텍스트를 생성해야합니까?

+0

더러운 방법은 'Type'에 번역 서비스를 삽입하고 거기에'empty_value '를 번역하는 것입니다. –

답변

0

당신은 코드 아래에 시도 할 수

/** 
* {@inheritdoc} 
*/ 
public function setDefaultOptions(OptionsResolverInterface $resolver) 
{ 
    $resolver->setDefaults([ 
     'translation_domain' => 'AcmeDemoBundle', 
    ]); 
} 

는 도움이되기를 바랍니다.

+0

예, 기본적으로이 작업을 수행하는 방법입니다. 내 프로젝트의 번역본은 표준 symfony 방식과 약간 다르게 설정되었으므로 몇 가지 다른 변경을해야했지만 이것이 올바른 길로 인도했습니다. –

0

아주 쉬운 방법이 있습니다. 이 심심 캐시 추가 할 필요를 삭제하는 것을 잊었다 그냥

YourProject 
     |___app 
       |___Resources 
         |___translations 
             |___messages.en.xliff 

messages.en.xliff에 그냥이 줄을

 <trans-unit id="Title"> 
      <source>Title</source> 
      <target>标题</target> 
     </trans-unit> 

검사를 추가하려면이 디렉토리에 messages.en.xliff 라는 이름으로 번역 파일을 형태의 트랜스. 당신이 그런 식으로, 기본 번역 도메인을 추가 할 수

->add(
    'birthday', 
    'birthday', 
    [ 
     'label' => false, 
     'required' => true, 
     'attr' => [ 
      'class' => 'date-fields' 
     ], 
     'empty_value' => 'your_translation_path' // for example title.year 
    ] 
) 

그리고 양식의 방법 setDefaultOptions에 :

+0

이것은 좋은 설명입니다. –