Chunk

Model-View-Controller/ru: Difference between revisions

From Joomla! Documentation

No edit summary
No edit summary
 
Line 9: Line 9:
Этот вид отвечает за генерацию вывода данных, отправляемых данным компонентом на веб-браузер. Он запрашивает у данной модели любые необходимые данные и форматирует их соответственным образом. Например, какой-либо список извлеченных из данной модели объектов данных может быть заключен данным видом в [код] таблицы в HTML.
Этот вид отвечает за генерацию вывода данных, отправляемых данным компонентом на веб-браузер. Он запрашивает у данной модели любые необходимые данные и форматирует их соответственным образом. Например, какой-либо список извлеченных из данной модели объектов данных может быть заключен данным видом в [код] таблицы в HTML.


Since Joomla is designed to be highly modular, the output from the component is generally only part of the complete web page that the user will ultimately see. Once the view has generated the output, the component hands control back to the Joomla framework which then loads and executes the template. The template combines the output from the component, and any modules that are active on the current page, so that it can be delivered to the browser as a single page.
Поскольку Joomla! спроектирована быть существенно модулярной [системой], выведенные данным компонентом на веб-страницу данные являются только частью всей полной веб-страницы, [показанной в заключение] пользователю. Как только данный вид сгенерировал вывод данных, данный компонент передает контроль обратно фреймворку [системы] Joomla, которая затем загружает и испольняет [код] шаблона. Данный шаблон объединяет выводимые данные этого компонента и любых других активных на данной веб-странице модулей, с тем что бы они [(эти выводимые данные)] были доставлены на веб-браузер как некая отдельная веб-страница.


Для того, чтобы предоставить веб-дизайнерам, которых может интересовать только новый дизайн, а не манипулирование находящимся под [дизайном] кодом, больше мощи и гибкости, [система] Joomla! разделяет традиционный вид на вид и макет. Сам вид вытягивает данные из данной модели, как в традиционном шаблоне проектирования MVC, но затем просто делает эти данные доступными данному макету, который отвечает за форматирование этих данных для [их] представления конкретному пользователю. Преимущество этого разделения в том, что система шаблонов Joomla предоставляет некий простой механизм для переопределения макетов в шаблоне. Эти переопределения макета (часто называемые "переопределение шаблона", поскольку они формируют часть конкретного шаблона, хотя [то] что фактически переопределяется - это данный макет) входят в состав шаблона и предоставляют дизайнеру данного шаблона полный контроль над всеми данными, выводимыми ядром Joomla! и любыми совместимыми со [схемой] шаблонного проектирования MVC установленными сторонними расширениями.
Для того, чтобы предоставить веб-дизайнерам, которых может интересовать только новый дизайн, а не манипулирование находящимся под [дизайном] кодом, больше мощи и гибкости, [система] Joomla! разделяет традиционный вид на вид и макет. Сам вид вытягивает данные из данной модели, как в традиционном шаблоне проектирования MVC, но затем просто делает эти данные доступными данному макету, который отвечает за форматирование этих данных для [их] представления конкретному пользователю. Преимущество этого разделения в том, что система шаблонов Joomla предоставляет некий простой механизм для переопределения макетов в шаблоне. Эти переопределения макета (часто называемые "переопределение шаблона", поскольку они формируют часть конкретного шаблона, хотя [то] что фактически переопределяется - это данный макет) входят в состав шаблона и предоставляют дизайнеру данного шаблона полный контроль над всеми данными, выводимыми ядром Joomla! и любыми совместимыми со [схемой] шаблонного проектирования MVC установленными сторонними расширениями.

Latest revision as of 23:34, 11 January 2015

Система Joomla! обширно использует шаблоны проектирования [в архитектуре] Модель-Вид-Контроллер.

Как только [система] Joomla! начала обработку какого-либо запроса какого-либо пользователя, такого как [запрос] GET для некоторой определенной страницы, или [запрос] POST содержащихся в какой-либо форме данных, одним из первых проводимых [системой] Joomla! действий является анализ URL ссылки для определения, какой компонент будет ответственен за обработку данного запроса и передача управления этому тому компоненту.

Если этот компонент был спроектирован [согласно схемы] MVC, то он передаст управление конкретному контроллеру. Этот контроллер отвечает за анализ данного запроса и определения какая модель/какие модели будут нужны для удовлетворения этого запроса и какая модель/какие модели должны быть использованы для возвращение результатов обратно данному пользователю.

Та модель/те модели инкапсулируют эти данные, используемые данным компонентом. В большинстве случаев эти данные будут поступать из базы данных, - либо [самой системы] Joomla!, либо какой-либо внешеней, но также возможно, что данная модель обретет данные из других источников, таких как работающий на другом сервере [интерфейс] API. В подходящих случаях, эта модель также отвечает за обновление базы данных. Цель этой модели - изолировать данный контролер и вид от подробных данных, [относящихся] к тому, как эти данные были получены или изменены.

Этот вид отвечает за генерацию вывода данных, отправляемых данным компонентом на веб-браузер. Он запрашивает у данной модели любые необходимые данные и форматирует их соответственным образом. Например, какой-либо список извлеченных из данной модели объектов данных может быть заключен данным видом в [код] таблицы в HTML.

Поскольку Joomla! спроектирована быть существенно модулярной [системой], выведенные данным компонентом на веб-страницу данные являются только частью всей полной веб-страницы, [показанной в заключение] пользователю. Как только данный вид сгенерировал вывод данных, данный компонент передает контроль обратно фреймворку [системы] Joomla, которая затем загружает и испольняет [код] шаблона. Данный шаблон объединяет выводимые данные этого компонента и любых других активных на данной веб-странице модулей, с тем что бы они [(эти выводимые данные)] были доставлены на веб-браузер как некая отдельная веб-страница.

Для того, чтобы предоставить веб-дизайнерам, которых может интересовать только новый дизайн, а не манипулирование находящимся под [дизайном] кодом, больше мощи и гибкости, [система] Joomla! разделяет традиционный вид на вид и макет. Сам вид вытягивает данные из данной модели, как в традиционном шаблоне проектирования MVC, но затем просто делает эти данные доступными данному макету, который отвечает за форматирование этих данных для [их] представления конкретному пользователю. Преимущество этого разделения в том, что система шаблонов Joomla предоставляет некий простой механизм для переопределения макетов в шаблоне. Эти переопределения макета (часто называемые "переопределение шаблона", поскольку они формируют часть конкретного шаблона, хотя [то] что фактически переопределяется - это данный макет) входят в состав шаблона и предоставляют дизайнеру данного шаблона полный контроль над всеми данными, выводимыми ядром Joomla! и любыми совместимыми со [схемой] шаблонного проектирования MVC установленными сторонними расширениями.

Languages