正如标题所示,我的表单中有一个选择字段(无线电html输入),在允许用户继续操作之前必须有一个选择。
我尝试将验证添加到捆绑包中的validation.yml
文件中(抛出错误,说明该字段不是有效的实体字段),我还尝试直接在表单代码中添加验证器,但收到异常,因为验证器类没有实现FormValidatorInterface
(代码如下)。
$builder->addValidator(new CallbackValidator(function(FormInterface $form) {
if(!$form['has_subalbums']->getData())
{
$form->addError(new FormError('Please indicate sub albums'));
}
}));
验证非实体字段的正确方法是什么?
答案 0 :(得分:5)
尝试:
使用Symfony \ Component \ Form作为表单; [...]
$builder->addValidator(new Form\CallbackValidator(function($form) { if(!$form['has_subalbums']->getData()) { $form->addError(new Form\FormError('Please indicate sub albums')); } }));
答案 1 :(得分:2)