Size: a a a

2020 March 18

AM

Alexander Makarov in Yii Framework 3
без примера плохо понятно
источник

А

Алексей R in Yii Framework 3
ну вот в дебаге, например, норм. Ни одного дефинищена массивом https://github.com/yiisoft/yii-debug/blob/master/config/common.php
источник

А

Алексей R in Yii Framework 3
ща найду где не норм )
источник

AM

Alexander Makarov in Yii Framework 3
на тему мёржа вообще вот https://github.com/yiisoft/yii-demo/issues/68
источник

А

Алексей R in Yii Framework 3
там на тему альясов, чел сразу неправильно конфиг прописал
но он верно подметил, что мержатся параметры методов неправильно
источник

AM

Alexander Makarov in Yii Framework 3
ну там не в этом смысл ещё
источник

AM

Alexander Makarov in Yii Framework 3
сам факт мёржа конфузит
источник

AM

Alexander Makarov in Yii Framework 3
то есть значения откуда-то взялись, а откуда не ясно
источник

AM

Alexander Makarov in Yii Framework 3
но, вероятно, это необходимое зло
источник

А

Алексей R in Yii Framework 3
да, тонкости рекурсивного мержа массивов
источник

А

Алексей R in Yii Framework 3
по сути, если тот же дефинишн из yii-web
Aliases::class => [
   '__class' => Aliases::class,
   '__construct()' => [$params['aliases']],
],
продублировать у себя, то получится, не замена дефинишена, а что-то вроде

Aliases::class => [
   '__class' => Aliases::class,
   '__construct()' => [
       $params['aliases'],
       $params['aliases']
   ],
],
источник

А

Алексей R in Yii Framework 3
но если изначально в yii-web будет кложура fn ($container) new Aliases($params['aliases']), то при мерже произойдёт замена
источник

А

Алексей R in Yii Framework 3
пользователь спокойно может описывать зависимости массивом и "необходимого зла" не произойдёт
источник

AM

Alexander Makarov in Yii Framework 3
гм, а если плагин поменять на "заменять", это ситуацию исправит?
источник

А

Алексей R in Yii Framework 3
вполне )
но надо понимать, что в некоторых случаях разработчиком может ожидаться поведение как в params, он на это понадеется и обломится
источник

А

Алексей R in Yii Framework 3
в тех случаях, когда параметры фабрики не выносятся в params
источник

А

Алексей R in Yii Framework 3
думаю об этом поведении просто надо будет явно написать в доках
источник

А

Алексей R in Yii Framework 3
Алексей R
по сути, если тот же дефинишн из yii-web
Aliases::class => [
   '__class' => Aliases::class,
   '__construct()' => [$params['aliases']],
],
продублировать у себя, то получится, не замена дефинишена, а что-то вроде

Aliases::class => [
   '__class' => Aliases::class,
   '__construct()' => [
       $params['aliases'],
       $params['aliases']
   ],
],
кстати, тут я скорее всего ошибаюсь, массив с массивом смержатся. Но в случае аргументов конструктора не массивов, аргументы смержатся а не заменятся
источник

AM

Alexander Makarov in Yii Framework 3
мб надо сделать настраиваемым как-то?
источник

AM

Alexander Makarov in Yii Framework 3
думаю, можно зарепортить просто желаемый набор настроек и предполагаемый синтаксис
источник