如何删除 symfony 形式的默认 ID 和名称?

How to remove default id and name in symfony form?

我使用此代码创建一个选择表单:

$builder
    ->add('name', EntityType::class,[
        'class' => MagList::class,
        'label' => false,
        'query_builder' => function(EntityRepository $rp){
             return $rp->createQueryBuilder('u')
             ->orderBy('u.id', 'ASC');
         },
         'choice_label' => 'name',
         'choice_value' => 'id',
         'attr' => [
              'id' => 'new_id',
              'name' => 'new_name',
          ],
    ])
;

并在我的页面中显示此来源:

...
<select id="mag_list_name" name="mag_list[name]" id="new_id" name="new_name">
...

如何删除 symfony 表单中的默认 ID 和名称?

您如何呈现表单?如果您 post 您的树枝文件也可能有所帮助。

无论如何,如果您按照 here, you can set id, name and other attributes as you wish (docu 所述使用例如 form_widget。示例:

 {{ 
   form_widget(form.name, {
     id: "new_id",
     full_name: "new_name"
   }) 
 }}

请注意,full_name 是 HTML 名称属性的属性。如果您使用此解决方案,请确保您也呈现其他表单组件并且它们具有正确的属性,例如标签取决于输入 id。