symfony IBAN 表单字段验证
symfony IBAN form field validation
我正在尝试使用 validateValue
对特定元素使用 symfony 验证
这是我的代码
$ibanConstraint = new IbanValidator();
$ibanConstraint->message = 'Invalid IBAN';
$errorList = $this->_validator->validateValue($form->get('iban')->getData(), $ibanConstraint);
但是它会抛出类似
的异常
ContextErrorException: Catchable Fatal Error: Argument 1 passed to Symfony\Bundle\FrameworkBundle\Validator\ConstraintValidatorFactory::getInstance() must be an instance of Symfony\Component\Validator\Constraint, instance of Symfony\Component\Validator\Constraints\IbanValidator given,
请问这是什么问题
因为IbanValidator
是验证器(正如它的名字所说)。但是在 Validator 组件中你不需要另一个验证器。你只需要约束来验证。
您应该使用约束对象创建 $ibanConstraint
:
$ibanConstraint = new Iban();
我正在尝试使用 validateValue
对特定元素使用 symfony 验证这是我的代码
$ibanConstraint = new IbanValidator();
$ibanConstraint->message = 'Invalid IBAN';
$errorList = $this->_validator->validateValue($form->get('iban')->getData(), $ibanConstraint);
但是它会抛出类似
的异常ContextErrorException: Catchable Fatal Error: Argument 1 passed to Symfony\Bundle\FrameworkBundle\Validator\ConstraintValidatorFactory::getInstance() must be an instance of Symfony\Component\Validator\Constraint, instance of Symfony\Component\Validator\Constraints\IbanValidator given,
请问这是什么问题
因为IbanValidator
是验证器(正如它的名字所说)。但是在 Validator 组件中你不需要另一个验证器。你只需要约束来验证。
您应该使用约束对象创建 $ibanConstraint
:
$ibanConstraint = new Iban();