Описание архитектуры Модель-Представление-Контроллер
CakePHP следует MVC шаблону проектирования. Программирование с использованием MVC разделяет ваше приложение на три основные части:
- Модель представляет данные вашего приложения(прикладные данные)
- Представление отвечает за вывод данных модели
- Контроллер обрабатывает запросы и маршруты, сделанные пользователем.
Рис.1: Основной MVC запрос
Рис.1: Показывает пример схемы MVC-запроса в CakePHP. Чтобы проиллюстрировать, предположим, пользователь с именем "Рикардо" просто нажал на ссылку "Купить Пирог!" на вашей главной странице.
- Рикардо нажимает ссылку, указывающую на http://www.example.com/cakes/buy, и его браузер делает запрос на ваш веб-сервер.
- Диспетчер проверяет запрос URL (/cakes/buy), и отправляет запрос на нужный контроллер.
- Контроллер обрабатывает свою логику, например он проверяет вошел ли Рикардо в систему (залогинился ли он на сайте).
- Кроме того, контроллер использует модель для получения доступа к прикладным данных. Модели, как правило, представляют собой таблицы базы данных, но они также могут представлять LDAP записей, RSS -каналы, или файлы в системе. В этом примере, контроллер использует модель для извлечения последних покупок Рикардо из базы данных.
- После того как контроллер обработал данные,они передаются в представление. Представление принимает эти данные и преобразует их в готовые страницы для отображения пользователям. Виды в CakePHP, как правило,представляются в HTML формате, но и вид может быть представлен как PDF, XML документ или объект JSON в зависимости от Ваших потребностей.
- Отображение использует информацию из Контроллера для того чтобы создать готовый документ для пользователя. Рикардо видит в браузере готовую страницу.
Почти каждый запрос вашего приложения будет следовать этой базовой схеме. Мы добавим некоторые подробности позже, которые являются специфическими для CakePHP, имейте это в виду, когда мы приступим.


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