How to translate labels in symfony2 forms with messages.en.yml?

formbuilder, forms, php, symfony, translation

Solution

i had to explicitly set the translation domain

e.g

->add('description','hidden',
 array(
   "label"=>"form.description",
   "required"=>true,
   'translation_domain' => 'fooo'
 )
);

in case of

fooo.de.xlf

Problem

I am trying to get translation of form fields to work. I have `messages.en.yml` in my Bundle's Ressource folder. ``` test: it works form: description: Add a description. ``` I want to build a form in an `EntityType` which translates the labels of the form fields accordingly. ``` $builder->add( 'description', null, array('label' => 'form.description', 'required' => false) ); ``` Yet only the literal string `'form.description'` gets shown, not the expected translation of `Add a description.` The translation service and the `messages.en.yml` are loaded correctly as I can call `var_dump($this->get('translator')->trans('test'));` in a controller and get the translated result. What am I missing when I want to treat the string `'form.description'` as something that should be translated? I suppose I have to call the trans function on them anyhow, yet how can I make it in one go automatically?

Original source