Size: a a a

2020 September 01

DS

Dmitriy S in Yii Framework 3
Сергей Предводителев
А в каких кейсах пакет должен переопределять приложение?
Например замена стандартной реализации. Есть модуль shop в нем есть CartInterface и стандартная реализация SimpleCart. Ты делаешь пакет с ComplexCart и в провайдере переопределяешь интерфейс. После установки пакета приложение уже работает с твоей новой корзиной. Хотя это все конечно можно и через ручное конфигурирование сделать.
источник

DS

Dmitriy S in Yii Framework 3
источник

СП

Сергей Предводителев... in Yii Framework 3
Dmitriy S
Например замена стандартной реализации. Есть модуль shop в нем есть CartInterface и стандартная реализация SimpleCart. Ты делаешь пакет с ComplexCart и в провайдере переопределяешь интерфейс. После установки пакета приложение уже работает с твоей новой корзиной. Хотя это все конечно можно и через ручное конфигурирование сделать.
Получается, есть пакеты, которые должны быть выше приложения, а есть какие ниже. Печаль(
источник

DS

Dmitriy S in Yii Framework 3
Сергей Предводителев
Получается, есть пакеты, которые должны быть выше приложения, а есть какие ниже. Печаль(
Можно сделать полностью пассивные провайдеры и даже запретить переопределять уже установленные сервисы, но я не знаю есть ли в этом смысл
источник

СП

Сергей Предводителев... in Yii Framework 3
Надо как-то делать, чтобы было очевидно
источник

NO

Nex Otaku in Yii Framework 3
Сергей Предводителев
Надо как-то делать, чтобы было очевидно
+
источник

DS

Dmitriy S in Yii Framework 3
Накидал пр для пассивных провайдеров. Приоритет пока сохранил
https://github.com/yiisoft/di/pull/143
источник

АН

Александр Некрасов... in Yii Framework 3
источник

DS

Dmitriy S in Yii Framework 3
Да, после прошлих экспериметов хард рисет не сделал)
источник

DS

Dmitriy S in Yii Framework 3
поправил
источник

АН

Александр Некрасов... in Yii Framework 3
👍
источник

DS

Dmitriy S in Yii Framework 3
В таком варианте метод set можно сделать приватным и выпилить его из абстрактного конфигуратора
источник

АН

Александр Некрасов... in Yii Framework 3
Dmitriy S
В таком варианте метод set можно сделать приватным и выпилить его из абстрактного конфигуратора
сделай в этом же Пр-е
источник

DS

Dmitriy S in Yii Framework 3
Александр Некрасов
сделай в этом же Пр-е
готово
источник

АН

Александр Некрасов... in Yii Framework 3
Dmitriy S
готово
AbstractContainerConfigurator где используется сейчас ?, может его вообще грохнуть ?
источник

DS

Dmitriy S in Yii Framework 3
Александр Некрасов
AbstractContainerConfigurator где используется сейчас ?, может его вообще грохнуть ?
В дебагере
источник

AM

Alexander Makarov in Yii Framework 3
Сергей Предводителев
У меня во всех проекта есть функция для строки в множественном числе на русском языке.

pluralRu($count, $s1, $s2, $s5)

1 дом
2 дома
5 домов

Такую языковую специфику можно в этот пакет добавить?
Нет. Эта специфика уже есть в intl и i18n (который, к слову сказать, нужно весь перелопатить). Причём для всех языков мира.
источник

АН

Александр Некрасов... in Yii Framework 3
@yiiliveext https://github.com/yiisoft/di/blob/master/src/Container.php#L39 может заменить на CompositeContainer ?, у ContainerInterface нету attach
источник

DS

Dmitriy S in Yii Framework 3
Этот метод всегда будет вызываться у композитного контейнера.
источник

АН

Александр Некрасов... in Yii Framework 3
это понятно, но src/Container.php#L105
Call to possibly undeclared method attach on type \Yiisoft\Di\CompositeContainer|\Psr\Container\ContainerInterface (\Psr\Container\ContainerInterface does not declare the method)
источник