Я пытаюсь создать простую форму, используя zendform, вот код класса формы:
<?php namespace admin\Form; use Zend\Form\Form; class Addstudent extends Form { public function __construct($name = null) { // we want to ignore the name passed parent::__construct('addstudent'); $this->add(array( 'name' => 'fio', 'type' => 'Text', 'options' => array( 'label' => 'Фио', ), )); $this->add(array( 'name' => 'gender', 'type' => 'Zend\Form\Element\Radio', 'options' => array( 'label' => 'Пол', 'value_options' => array( '0' => 'М', '1' => 'Ж', ), ), )); $this->add(array( 'name' => 'birthdate', 'type' => 'Text', 'options' => array( 'label' => 'Дата рождения', ), )); $this->add(array( 'name' => 'edge', 'type' => 'Text', 'options' => array( 'label' => 'Возраст', ), )); $this->add(array( 'name' => 'university', 'type' => 'Text', 'options' => array( 'label' => 'Вуз', ), )); $this->add(array( 'name' => 'group', 'type' => 'Text', 'options' => array( 'label' => 'Группа', ), )); $this->add(array( 'name' => 'department', 'type' => 'Text', 'options' => array( 'label' => 'Факультет', ), )); $this->add(array( 'name' => 'grate', 'type' => 'Zend\Form\Element\Radio', 'options' => array( 'label' => 'Курс', 'value_options' => array( '0' => '1', '1' => '2', '2' => '3', '3' => '4', '4' => '5', '5' => '6', ), ), )); $this->add(array( 'name' => 'enterence', 'type' => 'Text', 'options' => array( 'label' => 'год поступления', ), )); $this->add(array( 'name' => 'financesource', 'type' => 'Zend\Form\Element\Radio', 'options' => array( 'label' => 'Курс', 'value_options' => array( '0' => 'Бюджет', '1' => 'Контракт', ), ), )); $this->add(array( 'name' => 'studyform', 'type' => 'Zend\Form\Element\Radio', 'options' => array( 'label' => 'Форма обучения', 'value_options' => array( '0' => 'Дневная', '1' => 'Заочная', ), ), )); $this->add(array( 'name' => 'homeaddress', 'type' => 'Text', 'options' => array( 'label' => 'Домашний адрес', ), )); $this->add(array( 'name' => 'actualaddress', 'type' => 'Text', 'options' => array( 'label' => 'Фактический адрес', ), )); $this->add(array( 'name' => 'phone', 'type' => 'Text', 'options' => array( 'label' => 'Телефон', ), )); $this->add(array( 'name' => 'workplace', 'type' => 'Text', 'options' => array( 'label' => 'Место работы', ), )); $this->add(array( 'name' => 'services', 'type' => 'Zend\Form\Element\Textarea', 'options' => array( 'label' => 'услуги', ), )); $this->add(array( 'name' => 'submit', 'type' => 'Submit', 'attributes' => array( 'value' => 'сохранить', 'id' => 'submitbutton', ), )); } }
Но затем я пытаюсь показать, что контроллер показывает, что фатальный класс ошибки Addstudent не найден. вот как я импортировал его в контроллер
use admin\Model\Admin; use admin\form\Addstudent;
И вот действие
public function addstudentAction() { $form = new Addstudent(); $form->get('submit')->setValue('Сохранить'); $request = $this->getRequest(); if ($request->isPost()) { $admin = new Admin(); $form->setInputFilter($admin->getInputFilter()); $form->setData($request->getPost()); if ($form->isValid()) { $admin->exchangeArray($form->getData()); // $this->getAlbumTable()->saveAlbum($album); // Redirect to list of albums return $this->redirect()->toRoute('admin'); } } return array('form' => $form); // return array(); }
файл формы находится в модуле / admin / src / admin / form / addstudent.php