python - 来自 OpenAPI yaml 文件的 FastAPI 架构
问题描述
我正在寻找一种使用现有 OpenAPI YAML 模式文件初始化FastAPI服务器的方法。
文档确实描述了如何修改自动生成的模式,但我正在寻找类似Connexion的东西,它可以即时生成验证器。
编辑
我已经将有问题的属性追溯到这个:
class MyParameters(BaseModel):
...
ModelName: Optional[ModelName] = Field(None, description='')
...
openapi.yaml 中的匹配对象架构:
MyParameters:
type: object
properties:
...
ModelName:
type: string
enum: [XYZ]
description: ""
...
ModelName
不是强制性的。
解决方案
使用fastapi-code-generator解决问题后,我选择使用它。
对于使用Python 3.7的未来读者,问题是生成的models.py
文件中缺少导入:
from __future__ import annotations
在顶部添加它models.py
解决了这个问题。
推荐阅读
- mongodb - UpdateOneModel 替换 mongodb java-driver 中的现有文档
- android - Exoplayer 在切换 Stream 后卡住了
- java - ArrayList 覆盖
- forms - Jaws 表单字段视图选项卡字段
- python - Python基于第二列值的不同数据解释
- amazon-cloudformation - 将 AWS::Route53::RecordSet DnsRecord 添加到无服务器 Cloudfront Distribution
- arrays - 将对象数组映射到 list-reactjs 后无法获取数据
- javascript - 在同一功能中处理点击和按键的优雅方式
- angular6 - 用于初始绑定的 Angular v6 元素 @Input() 不起作用
- json - 使用 JSON.parse 解析 OpenStruct 或哈希