Pydantic 模型 w Fastapi 看不到属性
Pydantic model w Fastapi doesnt see properties
schemas.py
import pydantic as _pydantic
import datetime as _dt
class _UserBase(_pydantic.BaseModel):
email = str
class UserCreate(_UserBase):
hashed_password = str
class Config:
orm_mode = True
main.py
import fastapi as _fastapi
import fastapi.security as _security
import sqlalchemy.orm as _orm
import services as _services
import schemas as _schemas
app = _fastapi.FastAPI()
@app.get("/")
def get():
m = _schemas.UserCreate.schema_json()
return m
当我去 localhost:8000/ 它 returns:
"{\"title\": \"UserCreate\", \"type\": \"object\", \"properties\": {}}"
而且我也看不到 swagger 文档中的请求正文。它是空的。
正如您在 official pydantic
tutorial 中看到的那样,您应该使用类型注释,而不是将类型分配为 class 变量:
class _UserBase(_pydantic.BaseModel):
email: str
schemas.py
import pydantic as _pydantic
import datetime as _dt
class _UserBase(_pydantic.BaseModel):
email = str
class UserCreate(_UserBase):
hashed_password = str
class Config:
orm_mode = True
main.py
import fastapi as _fastapi
import fastapi.security as _security
import sqlalchemy.orm as _orm
import services as _services
import schemas as _schemas
app = _fastapi.FastAPI()
@app.get("/")
def get():
m = _schemas.UserCreate.schema_json()
return m
当我去 localhost:8000/ 它 returns:
"{\"title\": \"UserCreate\", \"type\": \"object\", \"properties\": {}}"
而且我也看不到 swagger 文档中的请求正文。它是空的。
正如您在 official pydantic
tutorial 中看到的那样,您应该使用类型注释,而不是将类型分配为 class 变量:
class _UserBase(_pydantic.BaseModel):
email: str