I'm trying upload user data with file. I wanna do something like this, validate user data and attach file
class User(BaseModel):
user: str
name: str
@router.post("/upload")
async def create_upload_file(data: User, file: UploadFile = File(...)):
print(data)
return {"filename": file.filename}
but it doesn't work Error: Unprocessable Entity Response body:
{
"detail": [
{
"loc": [
"body",
"data"
],
"msg": "value is not a valid dict",
"type": "type_error.dict"
}
]
}
But if i do separate ulr all work:
class User(BaseModel):
user: str
name: str
@router.post("/d")
async def create(file: UploadFile = File(...)):
return {"filename": file.filename}
@router.post("/")
def main(user: User):
return user
How to combine all together?