посоны, подскажите.
есть ручка, которая понимает пост запрос и есть json с кучей разных полей, которые хотелось бы уметь изменять как хочется. но как сделано сейчас - засторены несколько часто юзающихся типовых словарей, которым можно некоторые поля подтюнить. что-то мне подсказывает, что это не очень красиво, органично, ритмично, вокалично. прав ли я?
если да, как это сделать красиво? описать это "моделью" с помощью какого-то pydantic (датаклассы нам пока не завезли, сразу говорю). смущает еще момент, что некоторые поля (прямо скажем дохуя какие) могут быть, в зависимости от значений одного определенного поля, а могут и не быть. реквест вроде как не развернет, если я пришлю валидные ненужные данные, но хотелось бы как-то красиво уметь изменять структуру и расширять, в зависимости от зачений некоторых полей.
Я бы всегда мапил сериализованную структуру на объект, и там уже исползовла для него его собственный валидатор.
У тебя есть json - это твоя структура, которая десериализуется в дикт. Ты его пихаешь в фабрику, которая из него генерит объект, в котором все твои значения становятся своствами объекта. И потом этот объект кидаешь в конкретный для него написанный валидатор. В котором уж прописана логика, что поле 1 не обязательное, поле 2 тоже не обязательное, но хотя-бы одно из двух должно быть. Ну или типа того.