使用Symfony2上的翻译域翻译表单字段

时间:2015-04-03 19:01:55

标签: forms symfony translation xliff

我在app / resources / translations /上有翻译目录 menus.en.xliff,messages.en.xliff,user.en.xliff,...

我的表单结构:

public function buildform(FormBuilderInterface $builder, array $options)
{
 $builder
   ->add('name', 'text', array('label' => 'user.register', 'translation_domain' => 'user' ))
}

public function configureOptions(OptionsResolverInterface $resolver)
{
   $resolver->setDefaults(array(
   'data_class'         => 'AppBundle\Entity\User'
    ));
}


  

此方法有效但不是最佳方法。

我想不要重复'translation_domain'=>所有表单字段上的“表单”。

我正在试图通过configureOptions方法传递翻译域但是失败了。

public function buildform(FormBuilderInterface $builder, array $options)
{
  $builder
    ->add('name', 'text', array('label' => 'user.register'))

public function configureOptions(OptionsResolverInterface $resolver)
{
  $resolver->setDefaults(array(
  'data_class'         => 'AppBundle\Entity\User',
  'translation_domain' => 'user'
   ));
}

但是,当我在messages.en.xliff上写下所有翻译时,一切正常。 我该如何解决?

1 个答案:

答案 0 :(得分:0)

它应该在setDefaultOptions中而不是configureOptions: http://api.symfony.com/2.6/Symfony/Component/Form/AbstractType.html

相关问题