跳到内容

fast-api-冗余-响应-模型 (FAST001)

派生自 FastAPI 代码检查器。

修复总是可用的。

作用

检查 FastAPI 路由是否使用可选的 response_model 参数,且该参数的类型与返回类型相同。

为什么这不好?

FastAPI 路由会自动从返回类型推断响应模型类型,因此显式指定它是多余的。

response_model 参数用于覆盖默认的响应模型类型。例如,response_model 可用于指定应通过替代类型序列化不可序列化的响应类型。

更多信息,请参阅 FastAPI 文档

示例

from fastapi import FastAPI
from pydantic import BaseModel

app = FastAPI()


class Item(BaseModel):
    name: str


@app.post("/items/", response_model=Item)
async def create_item(item: Item) -> Item:
    return item

建议改为

from fastapi import FastAPI
from pydantic import BaseModel

app = FastAPI()


class Item(BaseModel):
    name: str


@app.post("/items/")
async def create_item(item: Item) -> Item:
    return item