如何基于点击按钮选择验证组
当你的表单包含多个按钮,你可以根据哪个按钮提交来改变表单验证组。例如,一个表单引导,允许您前进到下一步或返回到上一步。当返回到上一步,表单的数据应该被保存,但不能验证。
首先,我们要添加两个按钮到窗体:
1 2 3 4 5 |
$form = $this->createFormBuilder($task)
// ...
->add('nextStep', SubmitType::class)
->add('previousStep', SubmitType::class)
->getForm(); |
这时,我们配置的这个返回上一步的按钮就会运行特定的验证组。在这个例子中,如果你想去不让验证,我们就得将validation_groups
选项设置为false
:
1 2 3 4 5 6 |
$form = $this->createFormBuilder($task)
// ...
->add('previousStep', SubmitType::class, array(
'validation_groups' => false,
))
->getForm(); |
现在表单将跳过验证约束。但是他仍将验证基本的完整性约束,如检查一个上传文件太大或者你提交无效字段等。