2010-07-25 4 views
2

내가 내 오류를 첨부하고 싶다고 말합니다. Zend_Form 양식의 기본 꾸미기가 오류를 포함하고 있지 않음을 알았습니다. 그래서 난 내 Zend_Form 클래스에서렌더링 Zend_Form 오류

... 내 자신을 추가하는 시도

$this->setDecorators(array(
    'FormElements', 
    array('Errors', array('placement' => 'PREPEND')), 
    'Form' 
)); 

하지만 형태의 오류가없는 경우, 나는

경고 얻을 : 반드시 htmlspecialchars()에 매개 변수 1을 기대한다 문자열 일 것, 배열은 주어진 D : \ ResourceLibrary \ Frameworks \ ZendFramework \ library \ Zend \ View \ Abstract.php on line 897

나는 옳은 일을하고 있습니까? array('Errors', array('placement' => 'PREPEND')) 줄을 제거하면 해결되지만 그 이유는 무엇입니까? 오류가있는 경우, 그것은

가 UPDATE 오류가 내가 생각하는 형태의 Zend_Form_Decorator_Errors

$errors = $element->getMessages(); 

의 라인 53 ~에서 온 것 같다

그것이 SHLD 것이 오류없이 제대로 렌더링

$errors = $element->getErrorMessages(); 

답변

0

시도 :

$this->setDecorators(array(
    'FormElements', 
    array('FormErrors', array('placement' => 'PREPEND')), 
    'Form' 
)); 
+0

이 효과가 있습니다. 'addPrefixPath()'가 없어도 실제로 addPrefixPath()는 무엇을할까요? 두 번째 매개 변수'$ path'는 내 양식 클래스에 상대적인 경로입니까? 또는 무엇을? –

+0

이것은 네이티브 데코레이터이므로 addPrefixPath 호출없이 그대로 사용할 수 있습니다. – Ololo