От Новичка До Профи В Opencart: Разбор Mvc

Тема в разделе "Установка, обновление, настройка", создана пользователем admin, 7 июн 2016.

  1. TopicStarter Overlay
    Offline

    admin Команда форума Администратор

    Сообщения:
    2.317
    Симпатии:
    75.814
    Репутация:
    170
    В предыдущем уроке мы обсудили как работает движок любого OpenCart проекта. В этой статье мы продолжим обсуждение шаблонов проектирования, используемых в OpenCart, а так же создадим свой первый контроллер.

    Перед ознакомлением с архитектурой OpenCart, освежим наши знания архитектуры MVC.

    Что такое MVC?
    На сегодняшний день, в веб-программировании, MVC используется повсеместно. Многие популярные фрэймворки применяют данный принцип; однако MVC не является типом приложения, а шаблоном проектирования - одним из возможных вариантов для организации кода.

    MVC относится к архитектурным шаблонам проектирования, а её компоненты: контроллер, модель и представление полностью взаимосвязаны.

    [​IMG]

    1. Контроллеры
    Контроллеры предназначены для хранения управляющего кода программы. В MVC, это первый компонент, который запускается после перехода по определённому URL.

    2. Модели
    В моделях, как правило, хранится информация, которую мы извлекаем из баз данных, посредством выполнения SQL запросов. Все данные извлекаются из моделей; однако к ним невозможно обратиться напрямую - только из контроллера можно обратиться за получением данных из модели.

    3. Представления
    Представление - это третий компонент MVC, где располагаются элементы пользовательского интерфейса программы. В веб приложениях, данный компонент может содержать HTML, CSS, JavaScript, XML или JSON... Это единственный компонент, который доступен пользователю в отличии от контроллеров и моделей.

    Давайте разберём порядок действий, который запустятся при переходе по какому-то URL:

    • Контроллер: эй, модель ABC: пользователь хочет получить данные XYZ, передай их мне.
    • Модель: Получаю данные XYZ! Вот, держи.
    • Контроллер: эй, представление ABC, я передаю тебе данные XYZ.
    • Представление: выводит информацию на экране для пользователя.
    Работа с MVC в OpenCart
    1. Контроллеры
    В рамках OpenCart, контроллер так же является первым компонентом MVC. Давайте создадим наш первый контроллер:

    1. Создайте пустой каталог под названием test, catalog/controller/test.
    2. Создайте файл abc.php внутри данной папки, catalog/controller/test/abc.php.
    3. Вставьте следующий код в файл abc.php:
    <code><?php
    class ControllerTestAbc extends Controller{
    public function index()
    {
    echo 'Hello World';
    exit;
    }
    }
    ?></code>
    В приведённом примере неявно продемонстрированы некоторые правила OpenCart Framework, которые необходимо соблюдать.

    1. Название класса контроллера должно быть согласно формату Controller(НазваниеПапки)(НазваниеФайла). Запомните: Первые буквы папки и файла должны быть заглавными; так же в названии следует опускать расширение файла.
    2. Метод index() запускается автоматически при вызове контроллера.
    3. Метод index() должен быть публичным.
    4. Не помещайте внутри контроллера HTML, JavaScript, или CSS.
    Теперь перейдите по следующему адресу: http://localhost/Opencart/index.php?route=test/abc

    Итог
    Бинго! Мы создали наш первый контроллер. Просто, не так ли? Думаю для данного урока этого будет достаточно! Контроллер это не только первый компонент MVC; так же он первостепенен по значимости, ведь может существовать и использоваться без применения моделей и представлений.

    В следующих статьях мы примемся за создание моделей и представлений, а так же разберём работу с маршрутизатором для передачи параметров в контроллер. Надеюсь, вам нравится данная серия статей. Приятного кодинга!
     
    electr.od и gtox48 нравится это.