问题标签 [cerberus]

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.

0 投票
1 回答
31 浏览

cerberus - 我如何做类型或类型。字符串或整数?

我希望能够在字段中允许字符串或整数。我该怎么做呢?

这是我当前的架构:

0 投票
1 回答
901 浏览

python - 如何验证 Cerberus 中的嵌套字典对象

这是需要验证的示例数据。嵌套字典中的键employee_eligibility是数字字符串“[0-9]+”。

我编写了以下模式进行验证:

当我运行验证时,我收到以下错误:

0 投票
1 回答
593 浏览

python - RuntimeError:“验证”域中没有 [insert_filed_name] 的处理程序

我正在使用cerberus带有python-3.8stable 的 v1.3.2 来验证将用于发送 http 请求的 json 数据。我在使用该dependencies规则时遇到问题。我的对象有一个字段和一个包含更多数据request_type的可选字段。payload只有具有request_typein的对象['CREATE', 'AMEND']才有payload. 当我运行验证时,我收到一个与payload. 这是我正在运行的代码:

这是我得到的错误:

有什么我做错了吗?

对于上下文,我设法通过使用完全相同的规则使验证工作,但我没有使用dependencies,而是有两个名为payload_schema和的单独模式no_payload_schema。在payload_schema我将允许的值设置为request_type['CREATE', 'AMEND']并在no_payload_schema我将允许的值设置为['CANCEL']。我在两个模式上运行验证,如果它们都没有通过,我会引发错误。这听起来有点骇人听闻,我想了解如何使用该dependencies规则来做到这一点。

0 投票
1 回答
235 浏览

cerberus - 如何使用 Cerberus 验证包含特定范围内的浮点数的列表?

我想验证解析为 Python 字典的 JSON 对象,如下所示:

到目前为止,我能够定义以下架构:

我还想检查这些约束:

  • 字段值的第一项coordinates应介于 -30.0 和 10.0 之间
  • 第二项应介于 -10.0 和 50.0 之间

但我无法想出有用的东西。有没有人建议如何实现这一目标?


更新:根据接受的答案,架构变为以下

文档:https ://docs.python-cerberus.org/en/stable/validation-rules.html#of-rules-typesaver

0 投票
1 回答
326 浏览

python - cerberus.schema.SchemaError: {'uuid': [{'query_objectid_as_string': ['unknown rule']}]}

夏娃 API。我需要通过where={"uuid": "my_uuid"}过滤记录。所以我的 Eve 应用程序的“settings.py”包含:

当我尝试通过 API 调用编写内容时,出现错误:

cerberus.schema.SchemaError: {'uuid': [{'query_objectid_as_string': ['unknown rule']}]}

Python3.6、夏娃 1.1、地狱犬 1.3.2

我做错了什么?

0 投票
1 回答
223 浏览

python-3.x - 对内置类型使用自定义验证

我正在寻找使用自定义验证器而不是内置验证器来验证日期时间类型。

代码如下所示:

可以使用 来做到这一点checks_with: my_custom_validator,这问题,但我希望向公众开放这些模式,所以要求他们都为他们做出贡献会很麻烦。我认为这也可以使用归一化器来完成,但同样,我不想对输入进行调整。

这里有什么建议吗?dateutil解析器正是我想要使用的。

0 投票
1 回答
40 浏览

python - Overloading validate in cerberus

I'd like to overload validate in my custom validator class so that if the client only gives me text, I can convert it to yaml for validation.

I've tried the following:

But it doesn't work. Is this possible?

0 投票
2 回答
581 浏览

python-3.x - 无法使用 Python 和 Cerberus 验证重复值的列表

我对 Python 和 Cerberus 还很陌生。我有一个要求,我需要验证任何空字符串或重复项的列表。以下是我所做的:

由于某种原因,输出始终为“假”。
或者,我尝试了“oneof”规则并提出以下内容:

以上总是返回True。我希望'oneof'可以验证重复项,而上述方法是正确的。如果我错了,这里有人可以纠正我。!
在此先感谢,
尼克斯

0 投票
1 回答
58 浏览

python - 使用添加的规则集时 Cerberus 抛出异常

我在 Cerberus 1.3.2 模式中有以下部分(我将其存储为 YAML 文件):

由于我使用的规则members在架构的其他部分中被重用,我尝试将它们隔离到自己的规则集中:

然后我将members位更改为:

执行所有这些并调用validator.validate()会导致以下异常:

关于为什么会发生这种情况的任何想法?

0 投票
1 回答
155 浏览

python - Python:使用 cerberus 进行验证

我想验证 a dict,其中字段可能包含 anint或 a List[int]。此外,一切都int必须是积极的。

我需要一些帮助来设置架构。下面的架构无法正常工作。他们不检查负数。也就是说,负数正在通过验证,这是不正确的。