我有一个带有复选框或收音机类型的syfmony表单。 如果未选中任何复选框,则不会将数据传递给后期操作。
例如,如果我有一个带有两个ChoiceType的表单,并且我不从第二个选择任何内容,我希望在帖子操作中看到类似
的内容form[q1][]:4
form[q2][]:null
form[submit]:
相反,我接受了后期行动:
form[q1][]:4
form[submit]:
我也试图以我的形式添加:
'required' => false,
和
'empty_data' => null,
但仍然继续遇到同样的问题 无论如何,如果我使用
$form->handleRequest($request)
我按预期获得了空值,但仅仅是因为没有任何带有formName的请求。
这不是我需要的,因为我需要使用
$form->submit($request->get($form->getName()), false);
那么有没有办法传递到帖子也空值? 感谢。
答案 0 :(得分:-1)
您的问题不是Symfony问题。相反,它是HTML标准行为。只会检查已选中的复选框和单选框。您只需将所有字段设置为FALSE,并使用存在的$ _POST值覆盖它们。duplicate。另一个(我认为不好)解决方案是添加隐藏字段并在复选框状态更改时使用javascript更新