Zend_Form
에 대한 사용자 정의보기를 만들 수있는 확실한 방법이 있습니까? 데코레이터는 매우 신비스럽고 화려한 방법으로 사용할 때가끔 너무 복잡해서 HTML을 직접 작성하는 것을 선호합니다. 그것을 할 수있는 방법이 있습니까? 그리고 양식이 컨트롤러와 완벽하게 협조하도록하십시오 (예 : $form->isValid()
로 전화하고 모든 것이 올바르게 검증되기를 기대하십시오)? 그렇다면 검증 오류 표시에주의를 돌리는 것과 같은주의 사항이 있습니까?Zend에서 양식보기 만들기
이상적인 솔루션은 폼을 작성하고 요소 배열 (이름, ID, 입력 유형 및 HTML 렌더링에 필요한 모든 데이터 포함)을 전달하는 것입니다. Zend Framework는 이것을 허용합니까?
<?php
$userid = $this->form->getElement('userid');
$pass = $this->form->getElement('password');
$remember = $this->form->getElement('remember');
$submit = $this->form->getElement('submit');
?>
<form enctype="<?php echo $this->form->getEnctype(); ?>" method="<?php echo $this->form->getMethod(); ?>" action="<?php echo $this->form->getAction(); ?>" id="<?php echo $this->form->getId(); ?>">
name: <input type="text" id="<?php echo $userid->getId(); ?>" name="<?php echo $userid->getName(); ?>" /><br />
pass: <input type="password" id="<?php echo $pass->getId(); ?>" name="<?php echo $pass->getName(); ?>" /><br />
remember: <input type="checkbox" id="<?php echo $remember->getId(); ?>" name="<?php echo $remember->getName(); ?>" /><br />
submit: <input type="submit" id="<?php echo $submit->getId(); ?>" name="<?php echo $submit->getName(); ?>" value="<?php echo $submit->getValue(); ?>" />
</form>
양식 확인 작업 보인다 :
[편집]
대신 단지 echo
양식 객체를 보내고의
GET
을 통해이를 전달할 때 나는 믿는다.) 그게 받아 들일 수 있습니까, 아니면 그것을 모른 채 무섭게 잘못하고있는 것입니까?
: 당신이 장식을 사용하려는 경우
, 당신은이 기술을 마스터 매우 유용이 프리젠 테이션을 찾을 수의 나 ; – Marcin
데이터로 데이터를 채우는 것이 아니라 끔찍한 끔찍한 장식품을 사용하지 않고 자신의 HTML을 작성하는 것입니다. – mingos
그것은 지저분한 방법이며, 나는 대답으로 게시하지 않는 이유입니다. 그러나 Marcin이 제안했듯이, 여러분은 여전히 똑같은 ID로보기에 자신의 양식을 작성하고 Zend_Form으로 양식을 작성할 수 있습니다. 그런 다음 필터, 유효성 검사기 등을 사용하도록 채 웁니다. Zend_Form을 사용하지 않고 독립 실행 형 필터 및 유효성 검사기를 사용할 수도 있습니다. 기본적으로 생성 된 양식없이 Zend_Form을 사용하는 것과 같습니다. 하지만 최고의 조언은 여전히 있습니다 : 장식가들에게 다이빙;) –