Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Forms Silex全局表单验证_Forms_Validation_Symfony_Symfony Forms_Silex - Fatal编程技术网

Forms Silex全局表单验证

Forms Silex全局表单验证,forms,validation,symfony,symfony-forms,silex,Forms,Validation,Symfony,Symfony Forms,Silex,我想为我的表单添加一个全局验证器。它的目标是检查我在表单中包含的谷歌验证码(但不是作为表单元素) 我还将用于检查提交数据的全球一致性。e、 g.如果第一个元素已填充,则需要第二个元素 到目前为止,我使用isValid()方法创建了一个RecaptChasService 我还尝试在表单中添加以下代码。它可以工作,但是它在我的所有字段上添加了验证器,而不是在表单上全局添加 public function setDefaultOptions(OptionsResolverInterface $reso

我想为我的表单添加一个全局验证器。它的目标是检查我在表单中包含的谷歌验证码(但不是作为表单元素)

我还将用于检查提交数据的全球一致性。e、 g.如果第一个元素已填充,则需要第二个元素

到目前为止,我使用isValid()方法创建了一个RecaptChasService

我还尝试在表单中添加以下代码。它可以工作,但是它在我的所有字段上添加了验证器,而不是在表单上全局添加

public function setDefaultOptions(OptionsResolverInterface $resolver)
{
    $validator = $this->app['service.captcha'];

    $resolver->setDefaults(array(
        'validation_groups' => function(FormInterface $form) use ($validator) {
            $validator->isValid($form);
        }
    ));
}

有什么想法吗?

到目前为止,我发现的唯一方法是在我的控制器中添加更多逻辑,在
if(form->isValid())
之后有其他方法吗?到目前为止,我发现的唯一方法是在
if(form->isValid())之后添加更多逻辑。
有其他方法吗?