customizableEntities = $customizableEntities; $this->translator = $translator; } /** * @param FormBuilderInterface $builder * @param array $options */ public function buildForm(FormBuilderInterface $builder, array $options) { //prepare translation $customizableEntites = array(); foreach($this->customizableEntities as $key => $definition) { $customizableEntites[$definition['class']] = $this->translator->trans($definition['name']); } $builder ->add('name') ->add('entity', 'choice', array( 'choices' => $customizableEntites )) ; } /** * @param OptionsResolverInterface $resolver */ public function setDefaultOptions(OptionsResolverInterface $resolver) { $resolver->setDefaults(array( 'data_class' => 'Chill\CustomFieldsBundle\Entity\CustomFieldsGroup' )); } /** * @return string */ public function getName() { return 'custom_fields_group'; } }