2015-03-02 86 views
1

我想要使用的symfony驗證使用validateValuesymfony的IBAN表單字段驗證

這裏特定元素是我的代碼

$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,

我可能知道這裏有什麼問題。

回答

3

因爲IbanValidator是驗證器(如其名稱中所述)。但是在Validator組件中,你不需要另一個驗證器。你只需要約束來驗證。

你應該約束對象創建$ibanConstraint

$ibanConstraint = new Iban(); 
+0

是的,我改變了這一切。無論如何感謝您的答案 – user3535945 2015-03-02 12:06:18