Советы по разработке для приложения Zend
Нужны советы \ улучшения по структуре моего приложения
пользователь входит в систему и получает приветственное сообщение и меню опций, каждая из которых указывает на один и тот же контроллер, например OptionController, но с различными действиями
/ Опция / а
/ Опция / четкости
OptionController.php
{
abcAction()
defAction()
}
причина, по которой у меня разные действия, заключается в том, что для каждого варианта требуется разная форма
когда форма отображается и пользователь вводит данные, запрос снова отправляется на валидированный контроллер с другим действием для каждой опции. мне нужна базовая проверка формы + настраиваемая бизнес-логика
У меня это "работает", но не думаю, что это хороший способ сделать это. Мысли?
1 ответ
Я бы порекомендовал структуру, в которой вы суммируете не искусство (отображение, подтверждение) задачи, а, по вашим словам, "варианты"
например (:
controller: abcController
actions: addAction()
editAction()
listAction()
viewAction()
deleteAction()
controller: defController
actions: addAction()
editAction()
listAction()
viewAction()
deleteAction()
конфиги для ваших форм (включая проверку) должны быть в собственных классах, расширенных из Zend_Form, которые хранятся в его собственной папке. например, APPLICATION_PATH.'/forms'. (см. ZF - автозагрузчик) отображение и проверка форм могут находиться в одном действии, обычно я делю их на добавление и редактирование. (но используя один и тот же класс формы для обоих)
Задачи, которые вам нужны во всех контроллерах, лучше всего реализовывать как помощники действий или просмотра.