Skip to main content

Validate

Derive Macro Validate 

Source
#[derive(Validate)]
{
    // Attributes available to this derive:
    #[validate]
}
Expand description

派生 Validate trait 实现。

支持的 #[validate(...)] 规则:

  • email — 邮箱格式校验
  • required — 非空校验
  • length(min=N, max=N) — 长度范围校验
  • range(min=N, max=N) — 数值范围校验
  • regex(pattern=r"...") — 正则匹配校验
  • contains(value="...") — 包含子串校验
  • does_not_contain(value="...") — 不包含子串校验
  • if = "condition" — 条件校验

§示例

#[derive(Validate)]
struct User {
    #[validate(email)]
    email: String,
    #[validate(length(min=2, max=50))]
    name: String,
    #[validate(range(min=0, max=150))]
    age: i64,
}