О web-разработке
и даже немного больше...

Обращение к модели в контроллере OpenCart

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

Для тех, кто не знает, MVC представляет из себя архитектуру вида МодельПредставлениеКонтроллёр. В модели содержатся все основные данные приложения, касательно запросов к базе данных, основной логики, и методов работы. Контролёры в свою очередь являются промежуточным звеном между моделью и представлением, и осуществляют выполнение программы обращаясь к модели и передавая результат в представление. Представление в свою очередь является шаблоном разметки страницы, куда поступают уже готовые данные для вывода на странице.
В OpenCart мы можем обращаться к различным моделям, предварительно подгрузив их в контроллере.

Загрузка модели в контроллере

Существует правило обращения к моделям. Все модели публичной части сайта на OpenCart располагаются в папке /catalog/model.

$this->load->model('catalog/information');

Так к примеру, загружая модель, мы подключаем файл information.php из директории /catalog/model/catalog.
Модель представляет из себя класс PHP, который именуется особым образом, и может содержать некий набор методов. Мы можем обращаться к этим методам из контролёра, таким образом:

$prodList = $this->model_catalog_information->getProdList();

Таким образом, в переменную $prodList попадает массив данных, с которым мы может работать в пределах скрипта контролёра.

Передача данных в представление

Передать данные представлению мы можем посредством $this->data, предварительно задав название ключа для объекта.

$this->data['production'] = $this->model_catalog_information->getProdList();

В представлении эти данные будут доступны в переменной $production. Представление как правило уже содержит разметку HTML, где остаётся сделать вывод данных из переменной. Стоит обратить внимание на то, что посредством объекта $this->data передаются все переменные в файл представления. На практике количество переменных в представлении может быть целое множество.

Опубликован: 26.06.2020 г.

См. также:

Платёжные системы в OpenCart
Переключение OpenCart с HTTP на HTTPS
Сброс пароля администратора в OpenCart
Как в OpenCart очистить кэш?
Как установить модуль в OpenCart 2.x?
Как поменять статус заказа в OpenCart?
Отправка писем в OpenCart
Сортировка товаров в OpenCart

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Комментарии
  • Загрузка...
Друзья сайта