相关疑难解决方法(0)

FastAPI 等效于 Flask 的 request.form,用于不可知的表单

我尝试从 Flask 迁移到 FastAPI,我想知道是否有类似于 Flask 的东西:

payload = request.form.to_dict(flat=False)
payload = {key:payload[key][0] for key in payload}
Run Code Online (Sandbox Code Playgroud)

对于 FastAPI。

到目前为止,我只发现了一些技巧,您是否仍然必须将表单的所有参数一一实现给函数:

from pydantic import BaseModel
class FormData(BaseModel):
    alfa: str=Form(...)
    vita: str=Form(...)
async def Home(request: Request, form_data:FormData)
Run Code Online (Sandbox Code Playgroud)

这个例子当然比标准的表单处理在可读性上更好:

async def Home(username: str = Form(...), something_else: str = Form(...)):
Run Code Online (Sandbox Code Playgroud)

但由于所有表单字段的必要声明,它仍然非常受限。

还有其他更不可知和优雅的方法吗?

提前致谢,如果这是我无法通过谷歌搜索找到的微不足道的问题,我深表歉意:)

html python forms flask fastapi

1
推荐指数
1
解决办法
1207
查看次数

标签 统计

fastapi ×1

flask ×1

forms ×1

html ×1

python ×1