【发布时间】:2021-01-02 20:50:16
【问题描述】:
我有一个密码表单OAuth2PasswordRequestForm(位于fastapi/security/oauth2.py)。我从这个表格中得到了一个用户名(实际上是电子邮件)。但是我无法将此用户名传递给我的 crud.geet_user_by_email 函数,因为最后一个期望从pydanctic 而不是str 输入的正是Emailstr。我该怎么办?
代码:
@app.post("/token", response_model=schemas.Token)
async def login_for_access_token(
form_data: OAuth2PasswordRequestForm = Depends(),
db: Session = fastapi.Depends(database.get_db)):
user = authenticate_user(crud.get_user_by_email(email=form_data.username, db=db),
form_data.username, form_data.password)
CRUD 函数
def get_user_by_email(db: Session, email: EmailStr):
return db.query(models.User).filter(models.User.email == email).first()
【问题讨论】:
-
您应该向我们展示您的代码,以便我们可以复制问题。
-
@KlausD。添加源代码