Django Ninja API framework Pydantic schema for User model ommits fields
Проект работает под управлением Django с Ninja API framework. Для сериализации нативной модели пользователя Django я использую следующую схему Pydantic:
class UserBase(Schema):
"""Base user schema for GET method."""
id: int
username = str
first_name = str
last_name = str
email = str
Но этот подход дает мне ответ:
{
"id": 1
}
Где остальные поля?
При таком подходе я получаю полный ответ данных:
class UserModel(ModelSchema):
class Config:
model = User
model_fields = ["id", "username", "first_name", "last_name", "email"]
Ответ из ModelSchema:
{
"id": 1,
"username": "aaaa",
"first_name": "first",
"last_name": "last",
"email": "a@aa.aa"
}
Похоже, что проблема в том, что вы не указали тип для других полей. Просто замените =
на :
в вашей схеме для всех полей:
class UserBase(Schema):
"""Base user schema for GET method."""
id: int
username: str # not =
first_name: str
last_name: str
email: str