我尝试从事件侦听器中的表单中删除一些字段。但是当我这样做时,我收到了this form should not contain extra fields
之类的错误。如何抑制此错误?
这是我的听众:
$builder->addEventListener(FormEvents::PRE_SUBMIT, function (FormEvent $event) {
$form = $event->getForm();
$form->remove('field');
}
});
答案 0 :(得分:0)
如果您想忽略为某个字段提交的数据,您可以在" PRE_SET_DATA"上取消设置数据。或者将其设置为实体中的当前值。
不确定为什么您希望首先允许用户提交表单然后删除部分表单,而不是仅仅首先提供较短的表单
您也可以取消设置数据并从PRE_SUBMIT上的表单中删除字段,但是如果vlaidation出错,用户将返回不同的表单