2013-07-16 4 views
2

Есть ли учебник о том, как использовать «форму zend» без всей рамки?Zend Framework 2 Standalone Zend Form

Я использую Zend Framework 2. Мне удалось использовать Zend \ Config \ Reader \ Ini, чтобы прочитать конфигурацию и передать конфигурацию Zend \ Form \ Factory с использованием метода fromFile(), но после этого я Даже не знаю, как сделать форму. Я использую «Twig» для моего механизма шаблонов, поэтому мне нужно вывести форму, которую я создаю для токена Twig.

Способ сделать это кардинально изменится из Zend Framework 1, и я проверяю учебник, и он показывает только, как это сделать, когда вы используете их полную инфраструктуру mvc.

Может ли кто-нибудь помочь?

В Zend Framework 1 Я помню, мы просто делаем это как этот

$form = new Zend_Form(new Zend_Config_Ini('some_config.ini'); 
$form->render (new Zend_View()); 

Что такое эквивалент/аналогичный метод для Zend Framework 2?

ответ

0

Это не так, как в zf2 вместо одного вызова render(), как в zf1, теперь вы должны эхо каждого элемента формы и открытого и закрытого тега формы в вашем сценарии просмотра. Таким образом, в вашем контроллере:

$form = new \Zend\Form\Form; 
$form->append(new \Zend\Form\Element\Email('email')); 
return new ViewModel(array('form' => $form)); 

и в своем скрипте:

echo $this->form()->openTag($form); 
foreach ($form as $element) 
     echo $this->formRow($element); 
echo $this->form()->openTag($form); 
+0

Вот что я не нашел, что экземпляр $ this-> форма, я использую ZF2 в качестве отдельного модуля не целое. Я уже создаю $ form, каков шаг для создания html-макета в том же скрипте? –

+0

@WiryonoLauw Я добавил код для создания объекта формы. Если вы используете только zf2 по модулю, вы можете просто использовать их в одном файле. Просто удалите строку «return». – imel96