Size: a a a

2021 March 31

CB

Chiki Briki in symfony
Павел Г.
Есть такой подход. Но тут скорее первичная валидация, дальше должна быть валидация внутри бизнес объектов
Ну это не дает ответа на вопрос. Так ли это, что с таким подходом мы создаем невалидный обьект? И что мы должны избегать это
источник

ПГ

Павел Г. in symfony
Chiki Briki
Приветствую. Встал вопрос. Есть ли вообще смысл валидировать обьекты, например DTO, используя подход:
заполнить данными -> validate(object) ?
По сути, что это значит -  мы создаем обьект, который, потенциально, может быть создан в невалидном состоянии и если он не будет провалидирован, то дальнейшее поведение основанное на это обьекте может строиться с использованием невалидного состояния обьекта, чего мы желаем ибежать
Банально создают валидирующий мидлвар (вроде даже в самой симфе сразу есть), который валидирует команду мессенджера. Т.е. не сам хадлер валидирует а бас
источник

ПГ

Павел Г. in symfony
Chiki Briki
Ну это не дает ответа на вопрос. Так ли это, что с таким подходом мы создаем невалидный обьект? И что мы должны избегать это
Ну если мы что-то проверяем на валидность, значит уже сам факт есть, что объект может быт невалидный.
источник

ПГ

Павел Г. in symfony
Чет короче не понятно в чем вопрос. Это же не бизнес объект
источник

CB

Chiki Briki in symfony
А "не бизнес обьекты" можно создавать невалидными?
источник

ПГ

Павел Г. in symfony
Другое дело валидировать эту ДТО в хэдлере или нет дополнительно - вопрос
источник

ПГ

Павел Г. in symfony
Chiki Briki
А "не бизнес обьекты" можно создавать невалидными?
А какие еще вараинты есть? Массив валидировать?
источник

CB

Chiki Briki in symfony
Ну пока что да
источник

ПГ

Павел Г. in symfony
Chiki Briki
Ну пока что да
Чтобы ДТОшка была валидной, она должна знать о признаках валидности, минимум валидировать сама себя. Это уже плюс логика = уже не ДТО
источник

ПГ

Павел Г. in symfony
Иначе мы все равно может создать ее невалидной.
источник

ПГ

Павел Г. in symfony
Массив в валидтор, а потом создание ДТО из массива - не лишает нас возможности создать невалидную ДТО
источник

SP

Sergey Protko in symfony
Павел Г.
Массив в валидтор, а потом создание ДТО из массива - не лишает нас возможности создать невалидную ДТО
Почему? Не ну сделать плохо можно всегда
источник

ПГ

Павел Г. in symfony
Sergey Protko
Почему? Не ну сделать плохо можно всегда
Что почему, я не понял)? Данная операция нас ни от чего не спасает как по мне.
источник

ПГ

Павел Г. in symfony
Тут правда момент, что если DTO делать типизированную, то может упасть по типизации с 500... но это скорее проблема что с фронта вообще левак пришел.
источник

AK

Anton K. in symfony
CoooLler Vent
если совсем никак, ну перегружайте его ночью раз в день, по самой малой нагрузке
Ага, так и деляю я тож
источник

ПГ

Павел Г. in symfony
В этом случае да, отвалидировать сначала массив - возможно смысл имеет
источник

AK

Anton K. in symfony
Кролик иногда терял коннект с консьюмером, хотя процесс висел
источник

CB

Chiki Briki in symfony
Павел Г.
Банально создают валидирующий мидлвар (вроде даже в самой симфе сразу есть), который валидирует команду мессенджера. Т.е. не сам хадлер валидирует а бас
кстати на счет места валидации, как по мне - оно должно быть одно
например у нас есть служба с методом do
метод do принимает doDTO и для корректной работы метода она должна быть валидной
т.к. метод do могут вызвать из любого места приложения - валидация входящих в метод параметров должна ложиться на плечи самого метода
соответственно валидация на верхних слоях приложения становится ненужной / нежелательной
нежелательной потому что разносить валидацию по сути одного и того же по слоям - плохо
шо скажемс?
источник

Ш

Шурик in symfony
Chiki Briki
кстати на счет места валидации, как по мне - оно должно быть одно
например у нас есть служба с методом do
метод do принимает doDTO и для корректной работы метода она должна быть валидной
т.к. метод do могут вызвать из любого места приложения - валидация входящих в метод параметров должна ложиться на плечи самого метода
соответственно валидация на верхних слоях приложения становится ненужной / нежелательной
нежелательной потому что разносить валидацию по сути одного и того же по слоям - плохо
шо скажемс?
у тебя в любом месте приложения могут ВНЕЗАПНО возникнуть невалидные дто? или же только в тех местах, где юзеры тебе засылают свои запросики?
источник

ПГ

Павел Г. in symfony
Chiki Briki
кстати на счет места валидации, как по мне - оно должно быть одно
например у нас есть служба с методом do
метод do принимает doDTO и для корректной работы метода она должна быть валидной
т.к. метод do могут вызвать из любого места приложения - валидация входящих в метод параметров должна ложиться на плечи самого метода
соответственно валидация на верхних слоях приложения становится ненужной / нежелательной
нежелательной потому что разносить валидацию по сути одного и того же по слоям - плохо
шо скажемс?
Звучит логично, тоже задавался этим вопросом. Тут правда момент, что это первичная валидация, скорее чтобы фронту отдать данные и мессаджи.  Внутри все логика "валидирует" в своих процессах
источник