user1457328
user1457328

Reputation: 153

Symfony2 - Translate entity field type options

I'm using the FormBuilder to create my form. That works fine. The problem is my "Licence Object" which creates an select field with options. These options should be translated. But how to do that?

$form = $this   ->createFormBuilder($request)
                    ->add('title', 'text',
                        array(  'label' => $this->get('translator')->trans('form.title', array(), 'client_request_a_photo'))
                    )
                    ->add('description', 'textarea',
                        array(  'label' => $this->get('translator')->trans('form.description', array(), 'client_request_a_photo'))
                    )
                    ->add('licence','document',
                       array('class'=>'WunschbildBundle\Document\Licence', 'property'=>'options', 
                          'label' => $this->get('translator')->trans('form.licence', array(), 'client_request_a_photo'))
                    )                      
                    ->getForm();

Upvotes: 1

Views: 1722

Answers (1)

jfcartier
jfcartier

Reputation: 1096

In any case, you don't provide what is the 'document' field type, so we can't help much. However, from what I understand the options are fetched through the attribute 'options' of the 'Licence' object. If you want those to be translated, the object 'Licence' must be translatable and the attribute 'options' must have translations. You can do this by using the doctrine extensions bundle. The documentation about Translatable can be found here. Hope this help.

Upvotes: 1

Related Questions