Отвечает ли передний контроллер за решение, какие контроллеры / модули загрузить? - PullRequest
0 голосов
/ 25 июня 2009

Я работаю над сценарием веб-сайта, и в настоящее время у меня есть фронт-контроллер, который определяет, что загружать (например, какие модули / расширения и контроллеры) на основе URI. Это хороший подход? Я использую PHP, если это имеет значение. Мне просто интересно, если это не работа переднего контроллера ...

Ответы [ 2 ]

2 голосов
/ 25 июня 2009

Метод, который я использую, на самом деле включает два контроллера.

Есть Фронт-контроллер, который контролирует первоначальное поступление запроса. Тогда есть Контроллер страницы, который является определенным для текущей страницы (в зависимости от URI). Передний контроллер управляет загрузкой правильного контроллера страницы.

Задача Контроллера страницы состоит в том, чтобы получить доступ к Модели (для доступа к БД) и другим классам для составления данных для просмотра страницы.

Я бы сказал, что Front Controller никогда не должен делать ничего специфичного для URI и должен оставаться настолько универсальным, насколько это возможно, чтобы его можно было эффективно использовать повторно.

0 голосов
/ 25 июня 2009

Это шаблон фронт-контроллера в двух словах , и фреймворки, такие как CakePHP и Zend (я полагаю) делают почти то же самое (как и Rails и т. Д.).

Я думал только о том, стоит ли делегировать загрузку модулей и расширений контроллерам, которым они нужны, или ссылаться на них, поскольку фронтальный контроллер обычно обрабатывает действия на уровне приложения.

...