Можно ли полностью контролировать макет zend_form?

Я работаю с Zend Framework пару недель, так что это может быть полный вопрос для новичков, но мне интересно, есть ли способ настроить макет форм явным образом с помощью Zend_Form. Я искал повсюду, но каждый пример Zen-Form, который я нашел, использует пример эха.

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

{if $Form.errors}<span class="errorMessage">Error!</span>{/if}
{if $Form.Email.error}Fill out field{if}
{$Form.Email.html}
{$Form.Submit.html}

Но с Zend Framework мне кажется, что мне нужно украсить элементы формы в реальном php-коде и повторить заполненную форму:

echo $this->form;

Если это невозможно, существуют ли какие-либо PHP-фреймворки, которые позволяют этот уровень контроля?


person Eric Lamb    schedule 18.08.2009    source источник


Ответы (1)


вы можете визуализировать каждый элемент отдельно.

Просто используйте

<?php echo $this->form->age ?>
<?php echo $this->form->lastname ?>

в вашем сценарии просмотра, чтобы отображать только некоторые "элементы". Для рендеринга Form-Controll используйте:

<form action="<?php echo $this->escape($this->form->getAction() ?>"
      method="<?php echo $this->escape($this->form->getMethod() ?>">

Вы можете найти больше примеров здесь:

Украшение форм Zend на DevZone

person opHASnoNAME    schedule 18.08.2009