Декораторы в ZF

Wade

Новичок
Декораторы в ZF

Доброго времени
Рендерю форму логина для пользователя:
PHP:
public function getForm()
    {
    	 $form = new Zend_Form(array('disableLoadDefaultDecorators' => true));
        $form->setMethod('post')
        ->addDecorator('formElements')
        ->addDecorator('htmlTag', array('tag' => 'table'))
        ->addDecorator('form');
        $form->addElement('text', 'login', array('disableLoadDefaultDecorators' => true, 'required' => true, 'label' => 'Логин:','class'=>'bigtextb02'));
 
        $form->login->addDecorator('viewHelper')
            ->addDecorator('errors')
            ->addDecorator(array('tdTag' => 'htmlTag'), array('tag' => 'td'))
            ->addDecorator('label', array('tag' => 'td'))
            ->addDecorator(array('trTag' => 'htmlTag'), array('tag' => 'tr'));
       
       	$form->addElement('text', 'password', array('disableLoadDefaultDecorators' => true, 'required' => true, 'label' => 'Пароль:','class'=>'bigtextb02'));
 
        $form->password->addDecorator('viewHelper')
            ->addDecorator('errors')
            ->addDecorator(array('tdTag' => 'htmlTag'), array('tag' => 'td'))
            ->addDecorator('label', array('tag' => 'td'))
            ->addDecorator(array('trTag' => 'htmlTag'), array('tag' => 'tr'));
       
       
        $form->addElement('submit','send',array('disableLoadDefaultDecorators' => true,'label' => 'Регистрация'));
        $form->send->addDecorator('viewHelper')
               ->addDecorator('errors')
                ->addDecorator(array('tdTag' => 'htmlTag'), array('tag' => 'td'))
                ->addDecorator(array('trTag' => 'htmlTag'), array('tag' => 'tr'));
       	return $form; 
    }
    public function indexAction() 
    {
    	$this->view->frm = $this->getForm();
    }
и соответственно в index.phtml
PHP:
<?php echo $this->frm;?>
Поля отмечены как обязательные, но ошибки не появляются при пустых полях. Что не так?
 

Wade

Новичок
Видимо я идиот. В чем может быть косяк?

Update: а все увидел. Спасибо
 

dr-sm

Новичок
нужно делать так
PHP:
	public function loginAction() {
		$form = $this->getForm2();
		//$form = $this->_getLoginForm();
        if ($this->getRequest()->isPost()) {
        	if ($form->isValid($this->getRequest()->getPost())) {
        		// handle request here
        	}        
        }
		$this->view->form = $form;
	}
 

Wade

Новичок
Вдогонку - ошибки выводятся в
PHP:
<ul class="errors"><li>...</li></ul>
Как сделать чтобы выводилось в следующей ячейке после инпута.
Понимаю что надо копать в сторону декораторов, но пока не увидел.
Спасибо
 
Сверху