【FastAPI】路径参数(二)

预设值¶

如果你有一个接收路径参数的路径操作,但你希望预先设定可能的有效参数值,则可以使用标准的 Python Enum 类型。

导入 Enum 并创建一个继承自 str 和 Enum 的子类。通过从 str 继承,API 文档将能够知道这些值必须为 string 类型并且能够正确地展示出来。

然后创建具有固定值的类属性,这些固定值将是可用的有效值:

声明路径参数

用你定义的枚举类(ModelName)创建一个带有类型标注的路径参数:

dart 复制代码
from enum import Enum

from fastapi import FastAPI


class ModelName(str, Enum):
    alexnet = "alexnet"
    resnet = "resnet"
    lenet = "lenet"


app = FastAPI()


@app.get("/models/{model_name}")
async def get_model(model_name: ModelName):
    if model_name is ModelName.alexnet:
        return {"model_name": model_name, "message": "Deep Learning FTW!"}

    if model_name.value == "lenet":
        return {"model_name": model_name, "message": "LeCNN all the images"}

    return {"model_name": model_name, "message": "Have some residuals"}

打开文档后出现了可选的选项,在就是枚举类型的结果

相关推荐
onelafite6 天前
一键式商品信息获取:京东API返回值深度挖掘
api·fastapi
苏侠客8526 天前
在docker上部署fastapi的相关操作
docker·容器·fastapi
令狐寻欢8 天前
AI 大模型应用进阶系列(五):FastAPI 入门
人工智能·python·fastapi
六毛的毛11 天前
FastAPI入门:中间件、CORS跨域资源共享、SQL数据库
数据库·中间件·fastapi
蓝倾11 天前
批量获取亚马逊商品SKU商品规格调用流程
api·fastapi
蓝倾15 天前
京东商品销量数据如何获取?API接口调用操作详解
前端·api·fastapi
蓝倾18 天前
小红书获取笔记详情API接口调用操作指南
前端·api·fastapi
六毛的毛19 天前
FastAPI入门:表单数据、表单模型、请求文件、请求表单与文件
前端·python·fastapi
码@农19 天前
Python三大Web框架:FastAPI vs Flask vs Django 详解与快速入门指南
python·fastapi
MC皮蛋侠客19 天前
AsyncIOScheduler 使用指南:高效异步任务调度解决方案
网络·python·fastapi