@kiberchainik
начинающий найкрутейшЫй програмЁр

Как создать модульность в mvc?

предисловие. только обучаюсь, нашел на ютубе 4 видео урока как сделать hmvc набрал весь код, залил на гит hmvc вопрос в том как сделать модульность в данной системе. даю ссылку на гит чтоб можно было увидеть весь код! как в этой системе сделать модульность? т.е. есть например слайдер на странице сайта, я хочу чтоб этот слайдер был как модуль и мог бы использоваться на любой странице, например как в opencart
  • Вопрос задан
  • 188 просмотров
Пригласить эксперта
Ответы на вопрос 2
anton_reut
@anton_reut
Начинающий веб-разработчик
Сделай папку Modules и пусть твой движок при запуске каждый раз лезет в эту папку и загружает весь код тех модулей которые туда помещены, далее движок лезет в базу в таблицу Modules в Mysql где есть записи обо всех Экземплярах созданных модулей, в этих записях указываются все настройки всех созданных модулей, то есть у тебя код модулей и их Экземпляры существуют отдельно. Далее твой движок при рендере страниц вставляет нужные модули исходя из настроек Экземпляров модулей, используя код модулей из папки Modules.

Так устроена система модулей в Джумле например и это очень удобно.
Ответ написан
dmitriylanets
@dmitriylanets
веб-разработчик
хороший подход, использую очень давно, делается просто, я использую из твига такой вызов

{{ module('Local.Slider',{speed:400}) }}

или из php
<?=module('Local.Slider',['speed'=>400]')?>

Структура
Local/Modules/Slider/Slider.php
Local/Modules/Slider/tpl/default.twig

тут нет модели. так как модель хранится чуть выше уровнем в пакете Local
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы