typeAddressstruct{Streetstring`validate:"required"`Citystring`validate:"required"`Planetstring`validate:"required"`Phonestring`validate:"required"`}typeUserstruct{FirstNamestring`validate:"required"`LastNamestring`validate:"required"`Ageuint8`validate:"gte=0,lte=130"`Emailstring`validate:"required"`Favou...
我们首先需要定义一个数据结构,例如,我们可以创建一个用户注册表单的结构体。 packagemainimport("fmt""github.com/go-playground/validator/v10")typeUserstruct{Usernamestring`validate:"required,min=3,max=20" json:"username"`Emailstring`validate:"required,email" json:"email"`Ageint`validate:"required,min...
Uid int64 `validate:"required||integer=10000,_"` Name string `validate:"required||string=1,5"` Age int64 `validate:"required||integer=10,30"` Sex string `validate:"required||in=male,female"` Email string `validate:"email||user||vm"` PersonalPage string `validate:"url"` Hobby []string...
在使用go-playground/validator/v10验证一些空值的时候,需要使用指针类型。 package mainimport ("fmt""github.com/go-playground/validator/v10")type Person struct {Name string `validate:"required"`// 使用指针类型State *int `validate:"required,oneof=0 1"`}func main() {validate := validator.New()...
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"` IpAddr string `validate:"ipv4"` Email string `validate:"email"` ...
Address []*Address `validate:"dive"` // 可以拥有多个地址 } type Address struct { Province string `validate:"required"` //非空 City string `validate:"required"` //非空 Phone string `validate:"numeric,len=11"` //数字类型,长度为11 ...
示例5: validatePassword ▲点赞 1▼ func(m *NewUser)validatePassword(formats strfmt.Registry)error{iferr := validate.RequiredString("password","body",string(m.Password)); err !=nil{returnerr }returnnil} 开发者ID:carriercomm,项目名称:go-quay,代码行数:8,代码来源:new_user.go ...
Sexstring`validate:"required"` } 1. 2. 3. 4. 5. 6. 初始化结构体并做参数校验: funcInitUserInfo(id,ageint,name,sexstring)*UserInfo{ // new一个校验器 valid:=validator.New() // 初始化UserInfo userInfo:=&UserInfo{ ID:id, Age:age, ...
注册了validate的翻译函数 直接使用了原来提供的中文转换,对required等标签做对应的国际化 package service import ( zhongwen "github.com/go-playground/locales/zh" ut "github.com/go-playground/universal-translator" "github.com/go-playground/validator/v10" ...
required必填Field或Structvalidate:"required" omitempty空时忽略Field或Structvalidate:"omitempty" len长度Fieldvalidate:"len=0" eq等于Fieldvalidate:"eq=0" gt大于Fieldvalidate:"gt=0" gte大于等于Fieldvalidate:"gte=0" lt小于Fieldvalidate:"lt=0"