Выбор ответа Junior FastAPI и Pydantic обновлено
API Pydantic v2
Вопрос
Какие методы Pydantic v2 заменили parse_obj и .dict() из v1?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Model.modelvalidate(data) и obj.modeldump(). В v2 методы модели получили префикс model: modelvalidate, modelvalidatejson, modeldump, modeldumpjson, modelcopy.
Варианты ответа
Model.parse_data(data)иobj.to_dict()Model.validate(data)иobj.json(exclude=None)Model.model_validate(data)иobj.model_dump()правильный ответModel.from_dict(data)иobj.asdict(deep=True)
Разбор
В v2 методы модели получили префикс model_: model_validate, model_validate_json, model_dump, model_dump_json, model_copy. Валидаторы @validator заменили на @field_validator и @model_validator, class Config на model_config = ConfigDict(...). Старые имена частично работают с предупреждениями об устаревании.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Ещё по теме «FastAPI и Pydantic»
- Откуда в FastAPI ответ 422
- Annotated в параметрах FastAPI
- BackgroundTasks или очередь задач
- httpx.AsyncClient на каждый запрос
- Разбор и проверка query-параметров
- Граф зависимостей с кешем на запрос
- Подмена зависимостей в тестах
- Сколько раз вызывается зависимость