2010-06-19 4 views
4

저는 ZF를 처음 접했고 Zend_Form을 사용하고 입력 값을 검증하고 필터링하는 것과 같은 기능을 사용하고 있습니다. 폼을 만들고 요소를 추가하는 것과 같은 Zend_form의 기본 개념을 이미 알고 있습니다. 내 문제는 양식 요소에 사용자 지정 오류 메시지를 추가하고 폼을 인스턴스화 한 액션 컨트롤러 안에 해당 메시지를 정의하려고합니다. 내가 데이터베이스에 대한 유효성 검사를 수행해야하기 때문에 컨트롤러 내부에 오류 메시지를 정의하려고합니다. 예를 들어 사용자 이름/전자 메일이 데이터베이스에 이미 있는지 확인합니다. 나는 인터넷 검색을 시도하고 zend_form의 setErrorMessage 메소드로 연결되지만 사용하려고하면 오류 메시지가 전혀 표시되지 않습니다 ... 또한 zend_form-> setError를 시도하고 뷰 스크립트에 오류가 표시되지 않습니다. 작업 컨트롤러에서 사용자 정의 오류를 올바르게 설정했는지 또는 다른 방법으로 수행해야합니까?Z_Form :: 액션 컨트롤러 내의 zend_form에 사용자 정의 오류 메시지 추가하기

답변

2

Zend_Validate_Db_RecordExists을 사용하고 있습니까?

이런 식으로 뭔가 작업을해야합니다 :

$form->getElement('username')->getValidator("RecordExists")->setMessage('This username exists', 
       Zend_Validate_Db_RecordExists::ERROR_RECORD_FOUND 
      ); 
+0

확실하지 않음 오류 메시지를 연결할 수 있습니다. –

+0

당신은 무엇을 확인하려고합니까? – ChrisA

+0

사용자 지정 서버 측 유효성 검사. 기존의 유효성 검사기와 일치하지 않습니다. 내 자신의 유효성 검사기를 작성하는 대신 폼에 임의의 오류 메시지를 추가하는 방법을 찾고있었습니다. –

1

이것은 나를 위해 작동 : 영업 이익을 염두에 있었지만, 내 문제는 내가 특정 검증을하지 않는 것이 무엇인지

$form->getElement('username')->addError('This username exists.'); 
관련 문제