Какой механизм Laravel использовать?

Потихоньку вникаю в Laravel, документация конечно помогает, но иногда хочется услышать мысли живых людей. Есть необходимость реализовать некую систему компонентов. Компоненты можно регистрировать и потом как-то использовать. Вопрос в том, как лучше реализовать хранение списка этих компонентов, чтобы он был доспупен на протяжении всего жизненного цикла приложения. В голову приходит что-то типо Components::register(...config...) для регистрации компонента и $app->components для получения списка зарегистрированных компонентов. Как такое лучше реализовать, что использовать? Пните в нужном направлении и я пойду читать доки)
  • Вопрос задан
  • 384 просмотра
Решения вопроса 1
JhaoDa
@JhaoDa
LaravelRUS Team
До конца непонятно, что автор понимает под словом «компонент», но, вероятно, ему хватит и возможностей сервис-контейнера, про который он пойдёт и прочитает в документации. А на закуску можно почитать про Package Development.

Системы плагинов, как в разных CMS, в ларавел нет, потому что это не CMS. Каждый волен изобрести своё, опираясь на описанные выше возможности.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
@Kostik_1993
Web Developer
Не совcем понял ваш вопрос но возможно вам помогут контейнеры?)
Ответ написан
Комментировать
HeadOnFire
@HeadOnFire
PHP, Laravel & WordPress Evangelist
Описание конечно весьма туманное и с использованием терминологии которая к Laravel как-то перпендикулярно... Есть контейнер - там регистрируются все ваши "компоненты", они же доступны "списком" из "любого места" и "на протяжении всего цикла работы приложения". Есть сервис-провайдеры, которые по сути и в том числе являются механизмом регистрации ваших "компонент" в контейнер (и как следствие - приложение). И есть еще куча других фич, которые наверняка заменят элементы ваших компонент, если вы разберетесь с внутренним устройством Laravel и начнете думать ее архитектурой.
Ответ написан
Комментировать
Sanes
@Sanes
Есть разные реализации модульности. Если вы про это.
Для небольшого приложения я не стал заморачиваться, а просто разнес по директориям контроллеры, вьюхи и т.д.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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