양식으로 유효성 검사를 시도하지만 오류 메시지가 표시되지 않습니다.ZendFramework 2.0.0rc3 양식
//이 내 코드입니다 :
$form = new TestForm();
$form->setInputFilter(new TestFilter());
$data = array('id'=>'','email'=>'[email protected]');
$form->setData($data);
if($form->isValid()){
echo 'ok';
} else {
echo 'not ok <br/>';
$messagesForm = $form->getMessages();
$filter=$form->getInputFilter();
$messagesFilter=$filter->getMessages();
var_dump($messagesForm);
var_dump($messagesFilter);
}
/////////////////
Output
not ok
//messagesForm
array
empty
//MessagesFilter
array
'id' =>
array
'isEmpty' => string 'Value is required and can't be empty' (length=36)
_이
어떻게 가능한가? 필터는 괜찮지 만 양식에서 오류 메시지를받을 수 없습니다. 버그가 있거나 잘못 되었습니까?
FULL 코드 :
TestFilter : _
<?php
namespace mvc\filter;
use Zend\InputFilter\InputFilter;
use Zend\InputFilter\Factory as InputFactory;
class TestFilter extends InputFilter
{
public function __construct()
{
$factory = new InputFactory();
$this->add($factory->createInput(array('name'=>'id','required'=>true)));
$this->add($factory->createInput(array('name'=>'email','required'=>true)));
}
}
?>
_
TestForm _
네임 스페이스 MVC의 \ 양식;
Zend \ InputFilter \ Factory를 사용하십시오.
Zend \ Form \ Element를 사용하십시오.
Zend \ Form \ Form을 사용하십시오. 내가 ZF2 아직 함께 일하지만 요소 validators를 추가하려고하지 않은
이 오류가 아니십니까? "id is empty" –
예, 오류 ID는 비어 있지만 var_dump ($ messagesForm) 및 var_dump ($ messagesFilter)는 같거나 또는 같지 않아야합니다. – user1597726
양식 및 필터링/유효성 검사와 관련된 전체 코드를 제공하십시오 - 데이터의 유효성을 검증하지 않았기 때문에 오류 또는 값을 얻지 못할 가능성이 높습니다.) – Sam