我可以通过从控制器到formType的选项传递自己的数组吗

时间:2019-04-06 22:57:08

标签: forms symfony4

我想通过此函数传递一个数组: $ form = $ this-> createForm(ProductTypeType :: class,$ productType,$ options);

在symfony4中,无法通过$ otions将自己的参数传递给formType。

1 个答案:

答案 0 :(得分:0)

这可能是您所描述的。这是一个示例:

$form = $this->createForm(
    EntityType::class,
    $entity,
    ['optionOne' => true] //this is the array of options (in this case just one)
);

然后您可以在EntityType中使用此选项(例如,添加一个字段):

if($options["optionOne"]){
     $builder
         ->add('addedField')
//....or do something else...

EntityType中也请不要忘记为您的选项设置默认值:

public function configureOptions(OptionsResolver $resolver)
{
    $resolver->setDefaults([
        'data_class' => Entity::class,
        'optionOne' => false,
    ]);
}