【发布时间】:2022-09-23 19:30:18
【问题描述】:
我想在我的 FastAPI 模型中使用枚举字段。这是我的模型:
import enum
from sqlalchemy import Column, Enum, Integer, String
class Gender(enum.Enum):
FEMALE = \"FEMALE\"
MALE = \"MALE\"
...
class User(Base):
__tablename__ = \'user\'
id = Column(Integer, primary_key=True)
name = Column(String)
gender Column(Enum(Gender), default=Gender.FEMALE)
这是我的架构:
from enum import Enum
from pydantic import BaseModel
class Gender(str, Enum):
FEMALE = \'FEMALE\'
MALE = \'MALE\'
...
class User(BaseModel):
id: int
name: str
gender: Gender
class Config:
orm_mode = True
我收到错误消息value is not a valid enumeration member; permitted: \'FEMALE\', \'MALE\' (type=type_error.enum; enum_values=[<Gender.FEMALE: \'FEMALE\'>, <Gender.MALE: \'MALE\'>])。
更新:
现在我收到错误消息:pydantic.error_wrappers.ValidationError: 1 validation error for IdentificationRequestBase response -> 0 -> gender field required (type=value_error.missing)。
标签: python enums database-schema fastapi mode