首页 > 解决方案 > 如何在 Symfony 中的选择中添加第一个空行

问题描述

我正在使用createQueryBuilder我的BuildForm方法从实体中获取一些记录。

一切正常,我成功地显示了select我想要的数据,但我的第一行没有空值。

<select id="" name="" class="form-control">
  <option value="7">A</option>
  <option value="8">B</option>
  <option value="9">C</option>
</select>

这是我在BuildForm方法中制作的代码

 $builder->add('company', EntityType::class, array(
            'class' => Company::class,
            'query_builder' => function(EntityRepository $er) use ($options) {
             return $er->createQueryBuilder('c')
             ->where("c.id in {$options['id']}");
                    },
                    'label' => 'Company',
                ));

标签: phpsymfonyselectdoctrine

解决方案


您可以设置 required => false

 $builder->add('company', EntityType::class, array(
        'class' => Company::class,

        // Here you set required to false
        'required' => false,

        'query_builder' => function(EntityRepository $er) use ($options) {
         return $er->createQueryBuilder('c')
         ->where("c.id in {$options['id']}");
                },
                'label' => 'Company',
            ));

推荐阅读