Zend Form - проблема рендеринга отдельных элементов - PullRequest
1 голос
/ 08 мая 2011

У меня есть эта упрощенная форма:

        $this->form = new \Zend_Form();
        $this->form->setAction($request->currentPath());
        $this->form->setMethod('post');


        $this->form->addElement('text', 'firstName', array(
            'label' => 'First name: ',
        ));

и я хочу визуализировать элемент по отдельности на странице просмотра. Вот так:

        <?php echo $form->firstName->renderViewHelper() ?>

Но я продолжаю получать эту ошибку:

Неустранимая ошибка: Необработанное исключение «Zend_Form_Decorator_Exception» с сообщением «Декоратор ViewHelper не может отрисовать без зарегистрированного объекта представления».

Что я делаю не так? Я в значительной степени следовал документации Zend на этой странице: http://framework.zend.com/manual/en/learning.form.decorators.individual.html

С уважением, Почему

1 Ответ

3 голосов
/ 08 мая 2011

Вам необходимо передать объект формы после создания его в одном из ваших контроллеров в скрипт вида, чтобы отобразить элементы формы.

$this->view->form = $form;

А на ваш взгляд скрипт делает что-то вроде

echo $this->form->firstName->renderViewHelper();
...