Size: a a a

2020 September 08

NO

Nex Otaku in Yii Framework 3
могу сказать только против яндекс облака, они не очень)
источник
2020 September 09

СП

Сергей Предводителев... in Yii Framework 3
Может быть в контейнер добавить возможность задавать провайдер в виде Closure?

Чтобы вот такие штуки прямо в конфиге прописывать и не делать провайдер в пакете без префикса yii-

https://github.com/yiisoft/widget/blob/master/src/WidgetFactoryProvider.php
источник

СП

Сергей Предводителев... in Yii Framework 3
В конфиге будет лаконично:

return [
   'yiisoft/widget' => function(Container $container) {
   \Yiisoft\Widget\WidgetFactory::initialize($container);
 },
];
источник

DS

Dmitriy S in Yii Framework 3
Сергей Предводителев
В конфиге будет лаконично:

return [
   'yiisoft/widget' => function(Container $container) {
   \Yiisoft\Widget\WidgetFactory::initialize($container);
 },
];
Мы сейчас переделываем провайдеры на пассивные
источник

СП

Сергей Предводителев... in Yii Framework 3
Dmitriy S
Мы сейчас переделываем провайдеры на пассивные
Это хорошо, но \Closure может стать дополнительной возможностью и описанный кейс решит.
источник

СП

Сергей Предводителев... in Yii Framework 3
+ в yiisoft\csrf аналогичная ситуация, там нужно делать CsrfToken::initialize();
источник

DS

Dmitriy S in Yii Framework 3
Сергей Предводителев
Это хорошо, но \Closure может стать дополнительной возможностью и описанный кейс решит.
Контейнер вообще не должен передаваться в провайдер
источник

СП

Сергей Предводителев... in Yii Framework 3
Dmitriy S
Контейнер вообще не должен передаваться в провайдер
А откуда он его будет брать?
источник

DS

Dmitriy S in Yii Framework 3
Сергей Предводителев
А откуда он его будет брать?
Будет отдавать массив с конфигом сервисов. По сути провайдеры будут служить для группировки конфигов
источник

СП

Сергей Предводителев... in Yii Framework 3
Dmitriy S
Будет отдавать массив с конфигом сервисов. По сути провайдеры будут служить для группировки конфигов
https://github.com/yiisoft/widget/blob/master/src/WidgetFactoryProvider.php
Вот такое тогда не прокатит, надо будет переписывать...
источник

DS

Dmitriy S in Yii Framework 3
Да, не прокатит, надо будет придумать другой способ. Еще где-то встречал такой подход с инициализацией статики контейнером?
источник

СП

Сергей Предводителев... in Yii Framework 3
https://github.com/yiisoft/csrf/blob/master/src/CsrfToken.php
Тут нужно делать CsrfToken::initialize(), но тут контейнер не нужен
источник

СП

Сергей Предводителев... in Yii Framework 3
Собственно вопрос открыт - может сделать \Closure, который будет возвращать массив конфигурации контейнера? :)
источник

СП

Сергей Предводителев... in Yii Framework 3
Я бы вот так смог сделать тогда:
return [
   'yiisoft/widget' => static function() {
   CsrfToken::initialize();
   return [];
 },
];
источник

DS

Dmitriy S in Yii Framework 3
Сергей Предводителев
Собственно вопрос открыт - может сделать \Closure, который будет возвращать массив конфигурации контейнера? :)
Надо подумать.
источник

DS

Dmitriy S in Yii Framework 3
Сергей Предводителев
Я бы вот так смог сделать тогда:
return [
   'yiisoft/widget' => static function() {
   CsrfToken::initialize();
   return [];
 },
];
Добавь сюда для обсуждения
https://github.com/yiisoft/di/pull/143
источник

СП

Сергей Предводителев... in Yii Framework 3
готово
источник

T

TradersVE in Yii Framework 3
Those closures will bring problems, in addition to adding unnecessary complexity to the configurations.
источник

T

TradersVE in Yii Framework 3
Sometimes I don't understand the need to reinvent the wheel.
источник

NO

Nex Otaku in Yii Framework 3
Some developers have passion for overengineer anything they touch )
источник