symfony IBAN表单字段验证

时间:2015-03-02 11:38:57

标签: php symfony

我正在尝试使用validateValue

对特定元素使用symfony验证

这是我的代码

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

但它抛出了像

这样的异常
  

ContextErrorException:Catchable Fatal Error:传递给Symfony \ Bundle \ FrameworkBundle \ Validator \ ConstraintValidatorFactory :: getInstance()的参数1必须是Symfony \ Component \ Validator \ Constraint的实例,Symfony \ Component \ Validator \ Constraints \的实例IbanValidator给出了,

我可以知道这里有什么问题。

1 个答案:

答案 0 :(得分:3)

因为IbanValidator是验证者(正如其名称所述)。但在Validator组件中,您不需要其他验证器。您只需要约束来验证。

您应该使用约束对象创建$ibanConstraint

$ibanConstraint = new Iban();