Как удалить сообщения об ошибках Zend Form? - PullRequest
1 голос
/ 14 января 2010

Я сменил декоратор:

private function _addErrorDecorator($form)
{
    $form->setDecorators(array(
        'FormElements',
        new Zend_Form_Decorator_FormErrors(array
            (
                'ignoreSubForms' => true,
                'markupElementLabelEnd' => '</b>',
                'markupElementLabelStart' => '<b>',
                'markupListEnd' => '</div>',
                'markupListItemEnd' => '</span>',
                'markupListItemStart' => '<span>',
                'markupListStart' => '<div id="Form_Errors">'
            )
        ),
        'Form'
    )); 
    return $form;
}

Но теперь мне нужно удалить сообщения об ошибках в полях формы. Как мне это сделать?

1 Ответ

4 голосов
/ 14 января 2010

Каждый элемент, подчиненная форма и группа отображения в вашей форме также имеют стек декоратора, поэтому вам нужно будет изменить стек для элементов, которые вы хотите, чтобы сообщения об ошибках не отображались.

Есть много способов сделать это:

$form->setElementDecorators(array(
    'ViewHelper',
    'HtmlTag',
    'Label'
));

Это путь, если вы хотите сохранить стек декоратора элементов по умолчанию, но с декоратором ошибок, удаленным. Вы также можете сделать это на индивидуальной основе:

$element->setDecorators(array(
    'ViewHelper',
    'HtmlTag',
    'Label'
));

Или когда вы добавляете элемент:

$form->addElement($type, $name, array(
    'decorators' => $decorators
))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...