pydantic相关内容

带有FastAPI和PYDANIC的Python中的REST API:模型中的只读属性

假设有一个rest API,它在资源/foos上定义了一个POST方法来创建一个新的foo。在创建foo时,foo的名称是一个输入参数(出现在请求正文中)。当服务器创建foo时,它会为其分配一个ID。该ID与REST响应中的名称一起返回。 我正在寻找与OpenAPI中的ReadOnly类似的东西。 输入JSON应如下所示: { "name": "bar" } 输出JSON应 ..
发布时间:2022-08-19 09:16:30 Python

FastAPI-带有PYDANIC列表字段的GET请求

我是FastAPI新手(从FlaskTM迁移),我正在尝试为我的GET路线创建一个PYDANIC模型 from fastapi import APIRouter,Depends from pydantic import BaseModel from typing import Optional,List router = APIRouter() class SortModel(BaseM ..
发布时间:2022-08-18 23:50:28 Python

FastAPI中的部分更新

我想在支持部分更新的FastAPI中实现PUT或补丁请求。The official documentation确实令人困惑,我不知道如何处理该请求。(我不知道items在文档中,因为我的数据将与请求的正文一起传递,而不是硬编码的字典)。 class QuestionSchema(BaseModel): title: str = Field(..., min_length=3, max ..
发布时间:2022-08-18 22:17:43 Python

PYDANIC模型在FastAPI中的良好实践

我正在使用FastAPI构建一个REST API,我真的很喜欢这个工具,特别是它与Pydatics和OpenAPI的集成。 例如,我可以将端点采用的模型编写为 class Model(BaseModel): field1: str = Field(default=...) field2: int = Field(default=...) field3: List ..
发布时间:2022-08-18 21:49:21 Python

是否使用FastAPI将嵌套架构插入数据库?

我最近了解了fast API,并阅读了教程和其他文档。尽管FastAPI有很好的文档记录,但我找不到有关在使用数据库时如何处理嵌套输入的信息。 为了测试,我编写了一个非常小的家族API,有两个模型: class Member(Base): __tablename__ = 'members' id = Column(Integer, primary_key=True, ..
发布时间:2022-08-18 21:27:31 其他开发

PYDANIC枚举字段不会转换为字符串

我正在尝试将类中的一个字段限制为枚举。然而,当我尝试从类中获取词典时,它不会被转换为字符串。相反,它保留枚举。我检查了pydantic documentation,但找不到与我的问题相关的任何内容。 此代码代表我实际需要的内容。 from enum import Enum from pydantic import BaseModel class S(str, Enum): a ..
发布时间:2022-08-18 20:47:46 Python

根据字段的值使用不同的PUDING模型

我有两个简单的模型(var1和var2)。PostExample方法的输入可以接收第一个模型或第二个模型的数据。 使用Union有助于解决此问题,但在验证过程中,它会为第一个模型和第二个模型抛出错误。 如何使其在填写字段时出错的情况下,只为某个模型返回验证器错误,而不是同时为两个模型返回?(如果有帮助,则可以通过字段A的长度来区分模型) main.py @app.post("/Pos ..
发布时间:2022-08-18 19:29:27 Python

使用PYDANIC使每个字段都是可选的

我正在使用FastAPI和Pydtic制作一个API。 我希望有一些补丁端点,其中一条记录的1个或N个字段可以一次编辑。此外,我希望客户端仅传递负载中的必需字段。 示例: class Item(BaseModel): name: str description: str price: float tax: float @app.post("/ite ..
发布时间:2022-08-18 18:50:22 Python

pydantic:对具有别名的字段使用 property.getter 装饰器

一直向下滚动到 tl;dr,我提供了我认为很重要但与提出的问题没有直接关系的上下文 一点背景 我正在为 web 应用程序制作 API,一些值是根据 pydantic BaseModel 中其他值的值计算出来的.这些用于用户验证、数据序列化和数据库 (NoSQL) 文档的定义. 具体来说,我几乎所有资源都继承自 OwnedResource 类,该类定义了不相关的其他属性,例如创建/ ..
发布时间:2021-09-11 20:08:35 Python

哪种类型提示表示属性不能为 None?

在下面的代码中,我需要将 my_attr 声明为任何except None. 我应该用Any换什么? from pydantic import BaseModelfrom 输入 import Any类 MyClass(BaseModel):my_attr: 任何 解决方案 要实现这一点,您需要使用验证器,例如: from pydantic import BaseModel,valid ..
发布时间:2021-09-11 19:54:46 Python

FastAPI和Pydantic RecursionError导致ASGI应用程序中出现异常

说明 我已经看到了有关自引用Pydantic模型的类似问题,这些问题导致 RecursionError:在比较中超出了最大递归深度,但据我所知,代码中不包含自引用模型.我只是使用Pydantic的 BaseModel 类. 代码成功运行,直到下面的 audit.py 中的函数尝试从模型返回输出. 我已包含完整的追溯,因为我不确定从哪里开始此错误.我已经使用PyCharm在没有ID ..
发布时间:2021-05-06 20:29:25 Python