Блог
| Категории: |
|
Программирование → MVC в Joomla
08.06.2010
В конце 2008 года вышла в мир новая версия Joomla - версия 1.5. Новая версия существенно отличается от предыдущей — не только внешним видом, но и структурой. Во-первых, Joomla стала полноценным фреймворком, а во-вторых, в нее теперь добавлена архитектура MVC (модель-вид-контроллер). Архитектура MVC позволяет четко разделить данные, обработку действий пользователя и вывод данных на три отдельных компонента:
В чем же преимущество создания компонентов посредством MVC перед работой с Joomla 1.0? Возьмем, к примеру, компонент каталога Joomla 1.0. Компонент создавался, как два файла — catalog.php и catalog.html.php. В файле catalog.php мы делали обработку текущих задач. В зависимости от задачи, которую мы определяли оператором switch, запускалась функция, выполняющая обработку данных, и все данные для пользователя выводились уже в файле catalog.html.php. Если компонент маленький, то, в принципе, в этом нет ничего страшного, но если он вырастал до нескольких тысяч строк — тогда в этом компоненте можно было легко запутаться. Что же мы получили с выходом Jomla 1.5? Теперь не нужно строить огромный switch, чтобы определить задачу. Чтобы функция запустилась на выполнение, достаточно сделать в контроллере имя функции таким же, как и у нашей задачи, дописав ее, например, следующим образом: Достаточно будет обратится index.php?option=com_catalogue&task=sayHello, чтобы наш контроллер выполнил задачу sayHello. Далее — представим, что мы допустили ошибку в запросе либо решили изменить запрос. Теперь в таком случае не нужно лазить в дебрях кода catalog.php и искать нужное действие, чтобы отредактировать в нем запрос — достаточно зайти в модель и сделать исправления в необходимом методе. Если вам нужно исправить или изменить какое-либо отображение, достаточно зайти в шаблон вида, в котором необходимо внести изменения, и подправить требуемые участки, не затрагивая логику компонента. Если же вам нужно задать новую задачу для вашего компонента, достаточно добавить эту задачу, получить объект модели и запустить нужный метод модели (либо добавить новый метод для модели), после чего запустить его на выполнение.
|
Теги:
творческий подход создание сайтов поезд продающие фразы Стили Joomla написать текст оптимизированные тексты mvc дизайнер успех копирайтинг обрисовка кривые продвижение Интернет-реклама HTML контроллер мысли Стандарт заказчик CSS Интернет шаблон sql грамотные тексты работа photoshop программирование дизайн
|