3

好像FormBuilder的addValidator函数在symfony2的最新版本中没有了。Anyonw 知道如何重写该功能吗?

这是我的 2.0 代码:

    $builder-> addValidator(new CallbackValidator(function(FormInterface $form){
      $email = $form->get('email')->getData();      
        if (empty( $email )) {
          $form['email']->addError(new FormError("Du måste ange en epostadress för användaren"));
        }
    }));

我了解 FormBuilder 在 2.1 中已被“FormBuilderInterface”取代,但对于重写此功能需要采取哪些步骤,我仍然有些困惑。

4

1 回答 1

4

FormValidatorInterface由于实现的Symfony 2.1CallbackValidator已弃用,并在 2.3 中删除。

升级到 2.1 文件给出了解决方案:

该接口FormValidatorInterface已被弃用,将在 Symfony 2.3 中删除。

FormEvents::POST_BIND如果您使用此接口实现了自定义验证器,则可以用侦听(或任何其他事件)的事件侦听器替换它们*BIND。如果您使用了CallbackValidator该类,您现在应该将回调直接传递给addEventListener.

于 2013-09-25T15:11:42.707 回答