Как преобразовать объект django orm в объект pydantic list
я использую django channels и pydantic
использование django orm sync_to_async
как этот объект django orm преобразовать в pydantic response
class ExchangeRateSchema(BaseSchema):
currency: str
sales_rate: str
fix_time: datetime
created_at: datetime
@validator("currency")
def validate_currency(cls, v):
return v.split()[0]
@validator("fix_time")
def validate_fix_time(cls, v):
return v.strftime("%Y.%m.%d %H:%M")
# query_set
list(ExchangeRate.objects.filter(*args, **kwargs))
Как использовать схему ExchangeRateSchema для перечисления данных
[
{
"currency": "USA1",
"sales_rate": "1150.40",
"fix_time": "2022.05.06 08:54",
"created_at": "2022-05-06T08:55:07.998Z"
},
{
"currency": "USA2",
"sales_rate": "1150.40",
"fix_time": "2022.05.06 08:54",
"created_at": "2022-05-06T08:55:07.998Z"
}
]
использование другого кода ExchangeRateSchema
ExchangeRate.objects.filter(*args, **kwargs).latest(latest)
ExchangeRateSchema(**exchange.dict)
{
"currency": "USA",
"sales_rate": "1150.40",
"fix_time": "2022.05.06 08:54",
"created_at": "2022-05-06T08:55:07.998Z"
}