This is my schema file
from pydantic import BaseModel
from typing import Optional
class HolidaySchema(BaseModel):
year: int
month: int
country: str
language: str
class HolidayDateSchema(BaseModel):
name: str
date: str
holidays: HolidaySchema | None = None
class Config:
orm_mode = True
and this is the router that I have
@router.get("/holidays/",response_model = List[HolidayDateSchema])
The response I want to get is
[
{
"date": "2021-08-14",
"name": "Independence Day",
"holidays": { "year": 2022, "month":5, "country":"pk", "language":"en"},
"id": 13
},
]
Right now it doesn't support the pydantic schema with response model, I don't know why and it gives error pydantic.error_wrappers.ValidationError: 2 validation errors for HolidayDateSchema
and value is not a valid dict
It would be great if anyone can specify the best to get deeply nested JSON objects with response_model.
HolidaySchema isn't configured with orm_mode = True
.
You need this for all the models that you want to automagically convert from SQLAlchemy model objects.
class HolidaySchema(BaseModel):
year: int
month: int
country: str
language: str
class Config:
orm_mode = True
You can configure that setting on a common BaseModel and inherit from that instead if you want the setting for all your models.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.