百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
V

validator

> 编程语言
开源

Rust 结构的简单验证

2.5K stars0 点赞1 次浏览
访问官网GitHub

工具介绍

Rust 结构的简单验证

验证器

Macros 1.1 自定义派生,以借鉴 marshmallow 的方式简化结构验证 Django 验证器。 安装:

toml
validator = { version = "0.20", features = ["derive"] }

一个简单的示例:

…

如果 Option<_> 字段中的选项为 Some,则会对包含的类型执行验证。validate() 该方法返回 Result<(), ValidationErrors>。如果结果无效, ValidationErrors 实例包含以下信息: 一个错误映射图,其中错误的名称与结构体的字段名称对应。错误可以以三种方式表示,如由下面的说明所述: ValidationErrorsKind 枚举:

rust
#[derive(Debug, Serialize, Clone, PartialEq)]
#[serde(untagged)]
pub enum ValidationErrorsKind {
    Struct(Box<ValidationErrors>),
    List(BTreeMap<usize, Box<ValidationErrors>>),
    Field(Vec<ValidationError>),
}

在上述简单的示例中,任何错误都将具有 Field(Vec<ValidationError>) 类型,其中单个 ValidationError 具有以下结构:

在单个嵌套结构体(本示例中的contact_details字段)中找到的任何错误,将以Struct(Box<ValidationErrors>)类型返回到父结构的ValidationErrors结果中。

[dependencies]

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

Rust

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言