Опубликовано Оставить комментарий

Zend Framework 2 для начинающих: форма и контроллер

Создание формы и настройка контроллера в приложении на Zend Framework 2
Создание формы и настройка контроллера в приложении на Zend Framework 2

Формы — важная часть приложения на Zend Framework, а умение их создавать — неотъемлемая обязанность веб-разработчика. Как и в случае с модулем, для создания формы понадобится PHP-класс, в методе которого будут указаны будущие элементы формы. Для работы с формой, необходимо правильно настроить методы контроллера приложения. Класс формы в ZF2 приведён ниже. Этот класс расширяет компонент Zend\Form\Form и в конструкторе содержит строки вроде  $this->add(array(‘name’ => ‘id’,’type’ => ‘Hidden’,)) — создаётся скрытое поле с атрибутом name равным id.

Zend Framework форма и контроллер

В руководстве пользователя приводится пример реализации формы Zend Framework

namespace Album\Form;

 use Zend\Form\Form;

 class AlbumForm extends Form
 {
     public function __construct($name = null)
     {
         // we want to ignore the name passed
         parent::__construct('album');

         $this->add(array(
             'name' => 'id',
             'type' => 'Hidden',
         ));
         $this->add(array(
             'name' => 'title',
             'type' => 'Text',
             'options' => array(
                 'label' => 'Title',
             ),
         ));
         $this->add(array(
             'name' => 'artist',
             'type' => 'Text',
             'options' => array(
                 'label' => 'Artist',
             ),
         ));
         $this->add(array(
             'name' => 'submit',
             'type' => 'Submit',
             'attributes' => array(
                 'value' => 'Go',
                 'id' => 'submitbutton',
             ),
         ));
     }
 }

При правильном прохождении всех пунктов руководства, вы получите форму и около 5 методов контроллера, каждый из которых отвечает за страницу приложения. Каждая из страниц несёт ответственность за свою часть работы: показ основного содержимого, редактирование нового альбома, удаление альбома (с подтверждением), добавление нового альбома.

Добавить комментарий