Size: a a a

2020 May 21

RT

Roman Tsurkanu in Yii Framework 3
Я бы не рекомендовал никому, ни это
Post extends DTO
ни это
use DTOTrait
источник

RT

Roman Tsurkanu in Yii Framework 3
и мне кажется если мы рассматриваем именно dto, то валидировать его не нужно. Он должен создаваться после проверки данных.
источник

RT

Roman Tsurkanu in Yii Framework 3
это объект для передачи данных. Больше ничего он делать не должен.
источник

RT

Roman Tsurkanu in Yii Framework 3
если нужен валидатор любого класса - ок
источник

Д

Дмитрий in Yii Framework 3
Dmitry Naumenko
Хочу докинуть в https://github.com/yiisoft/validator какую-то стандартную реализацию DataSetInterface

DataSet::fromObject() – будет по публичным свойствам пытаться доставать значения
DataSet::fromArray() – для ArrayAccess

Либо new ObjectDataSet($someObject) / new ArrayDataSet($someArray)

Есть возражения?
да, будет
$dto = new UserInfoDto(...)
$validator->validate(DataSet::fromObject($dto))
источник

А

Алексей R in Yii Framework 3
Roman Tsurkanu
и мне кажется если мы рассматриваем именно dto, то валидировать его не нужно. Он должен создаваться после проверки данных.
+
источник

А

Алексей R in Yii Framework 3
однако и данные перед валидацией могут быть тупо ДТО )
источник

DN

Dmitry Naumenko in Yii Framework 3
В принципе и форма это ДТО, просто на стероидах
источник

AM

Alexander Makarov in Yii Framework 3
источник

AM

Alexander Makarov in Yii Framework 3
В принципе, я могу варианты ещё несколько дней писать :)
источник

RT

Roman Tsurkanu in Yii Framework 3
Dmitry Naumenko
В принципе и форма это ДТО, просто на стероидах
ну хз, тогда любой класс это dto, информацию содердит и передавать можно.
источник

AM

Alexander Makarov in Yii Framework 3
Дмитрий
да, будет
$dto = new UserInfoDto(...)
$validator->validate(DataSet::fromObject($dto))
Ну и как он сработает с моими object из вариантов выше?
источник

AM

Alexander Makarov in Yii Framework 3
Dmitry Naumenko
В принципе и форма это ДТО, просто на стероидах
Специализированный DTO.
источник

AM

Alexander Makarov in Yii Framework 3
Под конкретную задачу.
источник

RT

Roman Tsurkanu in Yii Framework 3
форма - это пользовательские данные, которые требуют валидации перед обработкой. DTO объект для предачи данных между слоями приложения.
источник

RT

Roman Tsurkanu in Yii Framework 3
Народ будет в эти dto пихать все что угодно, не показывайте плохой пример.
источник

RT

Roman Tsurkanu in Yii Framework 3
я делал dto с валидацией. В итоге там оказалось все что угодно и эти dto пронизывали все приложение. Долго расклеивали.
источник

RT

Roman Tsurkanu in Yii Framework 3
в итоге на уровне бизнес логики участвуют классы в которых прописаны правила валидации, сообщения о валидации и еще куча непонятного чего там быть не должно.
источник

AM

Alexander Makarov in Yii Framework 3
Не, ну понятно что формы в домен тащить не надо... хотя... кому понятно, кому не понятно. Тут правда.
источник

RT

Roman Tsurkanu in Yii Framework 3
я видел как реквест протаскивали в модели
источник