问题标签 [pydantic]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Pydantic:根据其他字段的值在验证器中设置字段 None
我将 pydanticBaseModel
与这样的验证器一起使用:
我想some_date
根据 的值计算 的值,some_list
并在None
满足某个条件时进行计算。
我的 JSON 从不包含该字段some_date
,它始终基于some_list
因此填充pre=True, always=True
。但是,默认验证器some_date
将在validate_date
我的自定义验证器之后运行,如果返回,它将失败None
。
有没有办法创建这样一个只能由另一个计算并且仍然可以的字段Optional
?
python - 如何验证名称为“来自”的 JSON 字段
我想通过使用pydantic验证器验证 JSON 对象(它在Telegram Bot API中),其中包含来自字段(Python 中的保留字)。所以我的模型应该如下所示:
但是使用来自在这种情况下不允许
我怎么能这样做?
注意:这与“为什么我们不能将关键字用作属性”不同,因为这里我们得到了我们无法控制的外部 JSON,无论如何我们都应该使用from字段处理 JSON。
python - 如何使用 pydantic 链接验证
假设我有获取 json 数据的 webhook。这个json是由pydantic递归转换的。
我用更新模型检查这个 json 是最小的有效对象(内部包含消息模型):
但稍后在代码中我想扩展验证,因此要检查消息不仅是Message,而且是TextMessage:
所以我将消息传递给验证函数
但是我得到的错误是pydantic不需要Message类型,而是dict。
我该怎么做?我如何对已经验证的(基本上)数据应用额外的验证?
python - 如何使用 Pydantic 解析模型列表
我使用 Pydantic 对 API 的请求和响应进行建模。
我定义了一个User
类:
我的 API 返回一个用户列表,我用它检索requests
并转换为字典:
如何将此字典转换为User
实例列表?
我现在的解决方案是
python - 使用 MyPy 的项目中的 FastAPI/Pydantic
我目前正在学习 fastAPI 教程,我的环境设置为 black、flake8、bandit 和 mypy。本教程中的所有内容都运行良好,但我一直不得不 # type: ignore things 让 mypy 合作。
Mypy 然后错误:
我可以 # type: ignore ,但是我在编辑器中丢失了类型提示和验证。我是否遗漏了一些明显的东西,还是应该为 FastAPI 项目禁用 mypy?
python - pydantic 模块仅在 init 中检查变量
pydantic 模块仅在 init 中检查变量
点安装 pydantic
例子
如果设置了变量的类型,是否可以检查它们?
python - 如何在使用 pydantic 进行类型转换之前进行类型检查?
我使用 pydantic 的 dataclass 装饰器创建了一个类,我想在参数成为类的属性之前检查它的类型。这是我的代码:
现在,当我创建一个像 person = Person(12) 这样的实例时,参数也变成了一个字符串 ('12')。如何在实例将参数转换为字符串之前检查类型?
fastapi - FastAPI:修改响应代码,同时保留自动验证
在下面的代码中,我创建了一个发布路由,无论输入如何,它都会发回相同的响应。
输入和输出是自动验证的,因为我在适当的地方引用了 pydantic BaseModel。
在您的文档中,您有如何修改响应代码的示例。
两个问题:
如何在保留响应验证(我放置在装饰器中)的同时有条件地修改响应代码?
我能做些什么来清理我的代码?为输入提供默认值的首选方法是什么?你能举个例子吗?
fastapi - `validator` 方法是否需要检查所需的参数?
从文档看来,此代码在 in 的第二个validator
装饰方法中password1
包含一个额外的检查values
。
我的观察是否正确 - 因为password1
不包含默认值,它确实是必需的,所以应该在那里?
好的,在我看到的文档中继续阅读:如果另一个字段的验证失败(或该字段丢失),它将不会包含在值中,因此如果值中的 'password1' 和 ... 在此示例中。
我可以看一个例子来说明这意味着什么吗?这是否意味着我需要始终检查值是否存在,如果它们在我的验证中发挥作用,即使它们是必需的?
python - Pydantic:如何从嵌套字典中提取模式?
我有一个包含数据库配置(键databases
)(ServiceDatabase
和OtherDatabase
)的字典,并希望将其提取到里面的两个不同的子模型中。例子:
我想用 pydantic 的 Options 或 Schema 功能来实现它。在我看来,它会像service_db = Field(schema=ServiceDatabase, extract_from='database')