symfony IBAN表单字段验证



我正在尝试使用validateValue 对特定元素使用符号验证

这是我的代码

$ibanConstraint = new IbanValidator();
$ibanConstraint->message = 'Invalid IBAN';
$errorList = $this->_validator->validateValue($form->get('iban')->getData(), $ibanConstraint);

但它像一样抛出异常

ContextErrorException:可捕获的致命错误:传递给Symfony\Bundle\FrameworkBundle\Validator\ConstraintValidatorFactory::getInstance()的参数1必须是Symfony\Component\Validator\Constraint的实例,给定的Symfony\coomponent\ Validator\Confraints\IbanValidator的实例,

我可以知道这里出了什么问题吗。

因为IbanValidator是验证器(顾名思义)。但在Validator组件中,您不需要另一个验证器。您只需要使用约束进行验证。

您应该创建带有约束对象的$ibanConstraint

$ibanConstraint = new Iban();

最新更新