Question

How i can get field value from form builder?

My controller:

$region = new Region();
$region->setName('TEMP!!');

$formBuilder = $this->createFormBuilder(array('region' => $region));

$formBuilder->add('region', new RegionAjaxType);

And form type:

/**
 * @{inerhitDoc}
 */
public function buildForm(FormBuilderInterface $builder, array $options)
{
    $region = ....
    $builder
       ->add('name', 'text');
}

I want get region object from builder form for get variables.

Was it helpful?

Solution

Options have parametr "data"

Example usage:

/**
 * @{inerhitDoc}
 */
public function buildForm(FormBuilderInterface $builder, array $options)
{
    $region = $options['data'];
    $builder
       ->add('name', 'text');
}

And control usage type with OptionsResolver

public function setDefaultOptions(OptionsResolverInterface $resolver)
{
    $resolver
        ->setDefaults(array(
            'region' => new Region
        ))
        ->addAllowedTypes(array(
            'region' => 'Acme\DemoBundle\Entity\Region',
        ))
    ;
}
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top