package main import ( "log" "github.com/go-playground/validator" ) type Users struct { Phone string `validate:"required"` // 必填 Email string `validate:"email"` // 验证字符串是email格式。默认为必填 Url string `validate:"url
https://github.com/go-playground/validator/blob/master/_examples/struct-level/main.go customer1.go Copypackage mainimport("fmt""github.com/go-playground/validator/v10")typeUserstruct{ FirstNamestring`json:firstname`LastNamestring`json:lastname`Ageuint8`validate:"gte=0,lte=130"`Emailstring`valid...
=nil {for_, err :=rangeerr.(validator.ValidationErrors) { fmt.Println(err)//Key: 'Users.Passwd' Error:Field validation for 'Passwd' failed on the 'min' tagreturn} }return} 验证规则 required :必填 email:验证字符串是email格式;例:“email” url:这将验证字符串值包含有效的网址;例:“url” ...
validate:=validator.New() err:=validate.Struct(users) iferr!=nil{ for_,err:=range err.(validator.ValidationErrors){ fmt.Println(err)//Key: 'Users.Passwd' Error:Field validation for 'Passwd' failed on the 'min' tag return } }
"github.com/go-playground/validator/v10" ) type Data struct { City string `validate:"min=8,max=15"` Name string `validate:"min=6,max=10"` Addr string `validate:"url"` Age int `validate:"gte=18,lte=100"` Tall int `validate:"required"` ...
"github.com/go-playground/validator/v10" ) type Data struct { City string `validate:"min=8,max=15"` Name string `validate:"min=6,max=10"` Addr string `validate:"url"` Age int `validate:"gte=18,lte=100"` Tall int `validate:"required"` ...
"github.com/go-playground/validator/v10" ) typeData struct { City string `validate:"min=8,max=15"` Name string `validate:"min=6,max=10"` Addr string `validate:"url"` Age int `validate:"gte=18,lte=100"` Tall int `validate:"required"` ...
前言 在web应用中经常会遇到数据验证问题,普通的验证方法比较繁琐,这里介绍一个使用比较多的包validator。 原理 将验证规则写在struct对字段tag里,再通过...
在web应用中经常会遇到数据验证问题,普通的验证方法比较繁琐,这里介绍一个使用比较多的包validator。 原理 将验证规则写在struct对字段tag里,再通过反射(reflect)获取struct的tag,实现数据验证。 安装 代码语言:javascript 代码运行次数:0 运行 AI代码解释
doc: https://github.com/go-playground/validator/blob/master/README.md#comparisons 范围验证: 切片、数组和map、字符串,验证其长度;数值,验证大小范围 lte:小于等于参数值,validate:"lte=3" (小于等于3) gte:大于等于参数值,validate:"lte=0,gte=120" (大于等于0小于等于120) ...