Size: a a a

2021 March 20

AK

Alexander Kompaneyts... in symfony
Имхо, тут про попытку натянуть сову на глобус. Симфони не про мидлвер. Используй слим с нужными тебе компонентами от симфони и будет счастье. Либо меняй подход, посмотри как симфони оформляет всё внутри.
источник

V

Vladimir in symfony
Alexander Kompaneytsev
Имхо, тут про попытку натянуть сову на глобус. Симфони не про мидлвер. Используй слим с нужными тебе компонентами от симфони и будет счастье. Либо меняй подход, посмотри как симфони оформляет всё внутри.
Куда вынести общую логику для всех контроллеров?
источник

Ш

Шурик in symfony
Vladimir
Куда вынести общую логику для всех контроллеров?
Если логика одинаковая для всех контроллеров, то она вообще не про контроллеры
источник

Ш

Шурик in symfony
1. Делаешь сервис с нужной тебе логикой. Сервис получает в конструктор request и конфиг, делает какие-то дела.
2. Делаешь twig_extension, в который передаешь этот сервис
3. При вызове метода этого twig_extension'а, внутри него вызываешь метод сервиса
4. Наслаждаешься
источник

Ш

Шурик in symfony
Итого логика в "сервисе" twig_extension нужен для твига, все работает
источник

Ш

Шурик in symfony
А контроллер во всей этой цепочке вообще не нужен, ибо от него ничего не зависит и он ни за каким хуем не нужен. Всё работает и с ним и без него
источник

V

Vladimir in symfony
Спасибо
источник

VM

Volodymyr Melko in symfony
Vladimir
Добрый день,  помогите с простым вопросом.  Пытаюсь с slimframework пересесть на symfony5 , но никак не могу найти ответ на базовый вопрос.  Как реализовать некий сервис,  который загружается каждый раз перед контроллером и делает общие настройки приложения -  например на основе request формирует определенные переменные для twig, или читает какой то yaml конфиг и кидает данные в контейнер?  Я не хочу в каждом action это повторять
Сабскрайбера на кернел ивент сделай
источник

ПГ

Павел Г. in symfony
Vladimir
Добрый день,  помогите с простым вопросом.  Пытаюсь с slimframework пересесть на symfony5 , но никак не могу найти ответ на базовый вопрос.  Как реализовать некий сервис,  который загружается каждый раз перед контроллером и делает общие настройки приложения -  например на основе request формирует определенные переменные для twig, или читает какой то yaml конфиг и кидает данные в контейнер?  Я не хочу в каждом action это повторять
Если задача именно про твиг, то вот такая еще штука есть:
https://symfony.com/doc/current/templates.html#embedding-controllers
источник

AK

Anton K. in symfony
Volodymyr Melko
Сабскрайбера на кернел ивент сделай
вот это норм совет
источник

AK

Anton K. in symfony
Vladimir
Спасибо
крч в симфони есть различные события, которые вызываются в процессе жизни приложения. kernel.request одно из таких событий, вызывается каждый раз. подписываешься в своем subscriber/listener на это событие, читаешь конфиг yaml.
источник

AK

Anton K. in symfony
у меня есть объект AppContext, я все эти runtime параметры сетаплю туда. Потом делаю свой TwigExtension, куда заинжектен этот AppContext и оттуда я уже через getGlobals делаю необходимые параметры для твига
источник

ИЛ

Иван Лещёв in symfony
Anton K.
крч в симфони есть различные события, которые вызываются в процессе жизни приложения. kernel.request одно из таких событий, вызывается каждый раз. подписываешься в своем subscriber/listener на это событие, читаешь конфиг yaml.
зачем читать ямл конфиг , если ямл конфиг и так читается?
источник

AK

Anton K. in symfony
Иван Лещёв
зачем читать ямл конфиг , если ямл конфиг и так читается?
по условиям задачи. может быть там в зависимости от запроса надо разные yaml читать
источник

Ш

Шурик in symfony
Anton K.
крч в симфони есть различные события, которые вызываются в процессе жизни приложения. kernel.request одно из таких событий, вызывается каждый раз. подписываешься в своем subscriber/listener на это событие, читаешь конфиг yaml.
А зачем события? Чтоб доступ к запросу получить?
источник

AK

Anton K. in symfony
Шурик
А зачем события? Чтоб доступ к запросу получить?
Чтобы засетапить все окружение
источник

AK

Anton K. in symfony
Запрос и через request stack можно получить
источник

ИЛ

Иван Лещёв in symfony
это всё херня!
подскажите лучше, доктрин бандл 2.3 не релизили случайно недавно, а потом не убирали?
источник

ИЛ

Иван Лещёв in symfony
потому что там для псалма подкрутили кое чего, что я видел, а потом оно пропало
источник

CB

Chiki Briki in symfony
ору с того, как ты пишешь)
источник