python-3.x - 如何更改 Pydantic 默认 __root__ 示例

标签 python-3.x fastapi pydantic

所以我有这个类(class):

class Table(BaseModel):
    __root__: Dict[int, Test]

我使用的是 __root__ 因为它是一个动态值,但是当我转到 /redoc (我使用的是 FastAPI)时,示例值默认为如下图所示为 property1property2,但我希望默认示例为 id_1id_2 。我怎样才能实现这个目标?

enter image description here

我尝试使用库的 Field 方法更改别名和标题,但似乎没有像我预期的那样工作。

最佳答案

您是否尝试过使用 schema customization 来做到这一点? ?

class QcastTable(BaseModel):
    __root__: Dict[int, Test]

       class Config:
           schema_extra = {
               "examples": [
                   {
                       "id_1": {
                           "title": "yourTitle",
                           "description": "yourDescription",
                       },
                       "id_2": {
                           "title": "yourTitle2",
                           "description": "yourDescription2",
                       }
                   }
               ]
           }

关于python-3.x - 如何更改 Pydantic 默认 __root__ 示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74319416/

相关文章:

安装 Pygame 时 Python pip3 Egg_info 错误代码 1

python - Tensorflow 图节点是交换的

python - 如何在中间件FastAPI python中获取当前活跃用户

python - FastApi Users Auth,无法添加额外的注册字段

python - 通过 Postman 将 JSON 数据发布到 FastAPI 后端时,值不是有效的字典

python - `pyyaml` 可以 't parse ` pydantic ` object if ` Typing` 模块被使用

validation - Pydantic 与枚举子类?

python - Pydantic - 递归创建模型?

python - python类构造函数中的缩进错误

python - 将多个空行减少为单个(Python 方式)