Size: a a a

2021 August 27

✨Basic_Instinct✨ in symfony
зачем? Какой кейс?
источник

A

Araik in symfony
Несколько баз, разные схемы, мне нужно аггрегировать нужные данные в новой базе со своей схемой
источник

in symfony
Всем привет. Столкнулся с такой проблемой. Использую Serializer от Symfony. У меня в DTO есть поле float $price, и там стоит валидатор на верный формат (@Assert\Type float, @Assert\NotNull, etc.)

Если из реквеста приходит {"price": "test"}, то прежде чем сработает валидатор, ругается сам сериалайзер с ошибкой
The type of the "price" attribute for class "ProductStoreRequest" must be one of "float" ("string" given)


Как то можно это исправить?
источник

КГ

Константин Грачев... in symfony
источник

in symfony
Конвертируется в 10,2
источник

КГ

Константин Грачев... in symfony
Всё равно хрень.

Ты ошибку свою пытался гуглить?
источник

in symfony
Да
источник

КГ

Константин Грачев... in symfony
источник

КГ

Константин Грачев... in symfony
Херово гуглил, учись гуглить
источник

A

AZA in symfony
источник

КГ

Константин Грачев... in symfony
А падажжи, так а нафига ты type property в dto используешь?
источник

in symfony
Ты бы перед тем как выпендриваться прочитал, что ты скинул. Без объявления типа property зачем мне эта шляпа
источник

in symfony
Окей, это то, что нужно, буду следить
источник

A

AZA in symfony
ну или это гавно можешь потестить)) https://github.com/Myaza-Software/Schema-Validator
источник

КГ

Константин Грачев... in symfony
Так он у тебя объявлен, иначе бы ошибки не было
источник

in symfony
Нет, это не то, но спасибо. Сейчас использую JMS Serializer, но проблема в том, что он всегда преобразует значение из JSON в typed property. Может из false 0 сделать, и валидатор это пропустит. Не нашёл, как это можно отключить. Документация у них странная
источник

A

AZA in symfony
всмысле не то? Тебе же надо валидировать типы property верно?
источник

in symfony
Да, но я предполагал, что перед тем, как создать объект DTO и каждой property давать значени, будет работать валидатор @Assert\Type например. Не знаю даже, как объяснить. Видимо действительно придётся от типов в property отказаться
источник

Ш

Шурик in symfony
сочетание typed-проперти float $value и Assert\Type("float") выглядит странно
что должно произойти, чтоб этот ассерт отработал и выдал ошибку?
источник

Ш

Шурик in symfony
то есть либо typed-свойство и будет ошибка о несовместимости типов
либо нетипизированное свойство + Assert\Type("float") и адекватная ошибка от валидатора
источник