Maciej Szpyra
Maciej Szpyra

Reputation: 312

Symfony2 My custom form field type isn't populated with data from entity

I created simple custom field

class InputWithDescriptionType extends AbstractType
{
public function configureOptions(OptionsResolver $resolver)
{
    $resolver->setDefaults(array(
        'description'         => '',
    ));

}

public function buildForm(FormBuilderInterface $builder, array $options)
{
   $builder
       ->setAttribute('description', $options['description'])
   ;
}

public function buildView(FormView $view, FormInterface $form, array $options)
{
    $view->vars['description'] = $options['description'];
}

public function getParent()
{
    return 'text';
}

public function getName()
{
    return 'input_with_description';
}
}

and added it to my form

$builder
        ->add('name')
        ->add('about', 'input_with_description', array(
            'description' => "description",
            'label' => "label",
        ))

When submitting form all data is saved properly but when I try to edit entity using this form the custom fields are all empty. Where may the problem be?

Upvotes: 0

Views: 338

Answers (1)

Anil
Anil

Reputation: 3752

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

Replace 'AppBundle\Entity\Product' with your entity class.

Upvotes: 1

Related Questions