You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

FastAPI中设置include_in_schema=False仍无法隐藏Pydantic模型

解决FastAPI中Pydantic模型无法从OpenAPI文档隐藏的问题

你当前的问题核心是include_in_schema=False的设置位置错误——它应该直接定义在Pydantic模型的Config类中,而非嵌套在json_schema_extra字典里。

修正后的模型代码

from pydantic import BaseModel, Field

class CardBalanceRequest(BaseModel):
    card_no: str = Field(..., example="1234567890123456")
    client_id: str = Field(..., example="1234")

    class Config:
        include_in_schema = False  # 直接在此处设置,而非json_schema_extra内部
        json_schema_extra = {
            # 其他额外配置可保留在此
        }

额外注意事项

如果该模型被路由直接用作请求体或response_model类型,即使设置了include_in_schema=False,FastAPI仍可能将其纳入文档。这种情况下可尝试:

  • 对响应模型,改用Union[YourModel, None]并配合response_model_exclude_none=True
  • 创建仅用于内部逻辑的私有模型,对外暴露简化版模型

内容的提问来源于stack exchange,提问作者Akram Hossain Rahat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 21:07:07