Точкой входа во внешнюю и административную часть является скрипт _.php
. В нём происходят следующие события:
\Ideal\Core\FrontController
(в режиме site или admin).FrontController запускает класс роутера \Ideal\Core\Site\Router
или \Ideal\Core\Admin\Roter
в зависимости от того к какой части пользователь пытается получить доступ.
Роутер по URL запроса определяет три вещи:
Затем FrontController инициализирует класс контроллера (определённый в роутере), передаёт ему модель и путь к странице (также найденные в роутере) и запускает контроллер на выполнение (метод run()
).
Контроллер запрашиваемой страницы определяет какое действие (action) требуется совершить и запускает соответствующий метод.
В экшене контроллера происходит заполнение переменных вида (twig-шаблона).
Для общедоступной части контроллер (уже снова в методе run()
) вызывает класс \Ideal\Core\Site\Helper
, общий для всего сайта, откуда извлекает данные для шаблона, общие для всего сайта (например, главное меню, баннеры и т.п.)
В результате всех своих действий контроллер (с помощью модели и вида) генерирует html-код страницы и возвращает его во FrontController.
После этого FrontController начинает вывод данных. Сначала он отправляет HTTP-заголовки, а затем уже и сам текст страницы.
comments powered by Disqus