Fastapi.Exceptions.ResponseValidationError: ошибки проверки «msg»: «Обязательное поле»Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Fastapi.Exceptions.ResponseValidationError: ошибки проверки «msg»: «Обязательное поле»

Сообщение Anonymous »

Что бы я ни пытался, я не могу получить список объектов моей модели из базы данных. (Пользовательская модель)
вот моя sql-модель:

Код: Выделить всё

class UserBase(SQLModel):
email: str = Field(index=True, nullable=False, max_length=128)
password: str
is_active: bool = Field(default=False)
role: Optional[str] = Field(sa_column=Column("role", role_types, nullable=True))

class User(
TimestampModel,
UserBase,
table=True
):
__tablename__ = 'users'
id: int = Field(primary_key=True, index=True, nullable=False)
vcode: str = Field(default=None)
profile: Optional["Profile"] = Relationship(back_populates="owner")

def __repr__(self) -> str:
return f'User -> {self.id} - {self.email}'

def dict(self):
return {
'id': self.id,
'email': self.email,
'vcode': self.vcode,
'created_at': self.created_at,
'updated_at': self.updated_at,
}
(если нужно увидеть TimestampModel и модель профиля, дайте мне знать)
Двигаемся дальше... Вот мой класс Crud (шаблон обслуживания):

Код: Выделить всё

class UsersCrud:
def __init__(self, session: SessionDep) -> None:
self.session = session

async def get_all_users(self):
stmt = select(User)
result = await self.session.exec(statement=stmt)
return result.all()

async def get_user(self, id) -> User:
result = await self.session.get(User, id)
return result

async def create_user(self, new_user_data: schemas.CreateUser) -> User:
new_user = User(email=new_user_data.email, password=hash_plain_password(new_user_data.password), vcode=generateOtp())
self.session.add(new_user)
await self.session.commit()
await self.session.refresh(new_user)
return new_user
Если вам нужно увидеть SessionDep, дайте мне знать.
И вот моя функция маршрутизации:

Код: Выделить всё

@router.get('/get-all-users', response_model=List[schemas.ShowUser], status_code=HTTPStatus.OK)
async def get_all_users_by_service(u: UserServiceDep):
all_users = await u.get_all_users()
return all_users
А вот моя пидантическая схема:

Код: Выделить всё

class ShowUser(BaseModel):
id: int
email: EmailStr
first_name: Optional[str] = None
last_name: Optional[str] = None
is_active: bool = False
vcode: str
model_config = ConfigDict(form_attributes=True)

P.S: Маршрут «Вставить пользователя» работает отлично (проверил с помощью pgadmin).

обновление: я думал, что маршрут «получить одного пользователя» работает нормально, но это произошло потому, что я не использовал какую-либо модель ответа. если я установлю response_model в схему ShowUser, этот маршрут также завершится неудачно.
Проблема в том, что я получаю сообщение «ошибка проверки, требуется поле msg» для всех полей, которые не включены в схему ShowUser. .
НО, когда я включаю их все, все равно выдается эта ошибка: (просто в качестве примера):

{'type': 'missing', 'loc': ('ответ', 3, 'электронная почта'), 'msg': 'Обязательное поле', 'ввод': (Пользователь -> 8 - [email protected],)

Подробнее здесь: https://stackoverflow.com/questions/792 ... field-requ
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Fastapi.Exceptions.ResponseValidationError: ошибки проверки «msg»: «Обязательное поле»
    Anonymous » » в форуме Python
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous
  • YII, как показать пользовательский MSG с ошибкой с помощью проверки сбой MSG
    Anonymous » » в форуме Php
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • FastAPI, ResponseValidationError
    Anonymous » » в форуме Python
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Чтение вложений .msg из файла .msg
    Anonymous » » в форуме Python
    0 Ответы
    35 Просмотры
    Последнее сообщение Anonymous
  • Чтение вложений .msg из файла .msg
    Anonymous » » в форуме Python
    0 Ответы
    29 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»