에서 오류를 throw하는 방법 Symfony 1.4의 Forms에서 임베디드 폼의 유효성 검사기에 sfValidatorError를 던지려면 어떻게해야합니까?임베디드 양식의 유효성 검사기 (sfForm)
내 부모 폼 호출 다음
public function configure(){
$this->embedForm('page', $pageLinkForm);
}
그리고 내 임베디드 형태 :
public function configure(){
$this->validatorSchema->setPostValidator(new sfValidatorCallback(array(
'callback' => array($this, 'validateLink')
)));
}
public function validateLink($validator, $values) {
if (!empty($values['link']) && !empty($values['outside_link']))
throw new sfValidatorError($validator, 'Only specify either an internal link or an external link, but not both.');
}
사후 검증이 sfValidatorError을 던졌습니다 validateLink 실행하지만 글로벌 오류와로 표시하지 않습니다 isValid() 형식이어야하지만 그렇지 않아야합니다.
왜 오류가 무시됩니까? 내가 어떻게 그것을 무시하지 않을 수 있습니까? sf1.1에서
이 파일을 debbuging 시도 : http://trac.symfony-project.org/browser/branches/1.4/lib/validator/sfValidatorSchema.class.php (가능한 경우 XDebug를 사용하여 단계별 디버깅을 수행하고 그렇지 않으면 var_dump()를 사용하여 확인) : - 오류 sfValidatorError는 caugh입니다. t 줄을 삽입하는 동안 게시 - 결과로 나타나는 errorSchema가 199 행에 던졌습니다.의 줄 159에서 다시 캐치됩니다. 부모 양식의 validatorSchema의 var_dump()를 게시하십시오. – greg0ire