Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Добрый день. Я плохо знаком с Laravel, в процессе разработки возник вопрос, как правильно организовать код блока, например шапки сайта.
Опишу ряд особенностей:
1. Блок может обращаться к различным моделям (например, к модели верхнего меню)
2. Нужно передавать в него ряд параметров из контроллера (например, title текущей страницы; идентификатор, для подсветки ее в меню)
Соответственно непонятно где и как должны быть расположен код работы с моделью, не во view же его пихать. Причем интересно как это реализовывать как в случае include (подключаем шапку), так и extend (наследуем от layout-а, который работает с моделью).
Также интересно как реализовывать модульную структуру, то есть независимые блоки:
1. к которым не может быть получен доступ напрямую по урлу
2. которые имеют свою бизнес-логику
3. которые могут динамически быть подключены к конкретной странице, то есть будет иметься массив модулей, привязанных к этой странице, по которым нужно пройтись циклом, отрендерить (возможно передав некоторые параметры) и вывести в некотором месте шаблона страницы.
Заранее спасибо за ответы.
Для таких целей можно использовать виджеты
https://packagist.org/packages/arrilot/laravel-widgets
У виджета есть свой класс с бизнес логикой и вьюха.
Подключается виджет путём добавления кода
@widget('menu')
в нужный вам шаблон (view)
Также в него можно передавать необходимые параметры.
Изменено Nogard7491 (19.06.2016 06:06:05)
Не в сети
Страницы 1