required //这将验证该值不是数据类型的默认零值。数字不为0,字符串不为 " ", slices, maps, pointers, interfaces, channels and functions 不为 nil
isdefault //这验证了该值是默认值,几乎与所需值相反。
len=10 //对于数字,长度将确保该值等于给定的参数。对于字符串,它会检查字符串长度是否与字符数完全相同。对于切片,数组和map,验证元素个数。
max=10 //对于数字,max将确保该值小于或等于给定的参数。对于字符串,它会检查字符串长度是否最多为该字符数。对于切片,数组和map,验证元素个数。
min=10
eq=10 //对于字符串和数字,eq将确保该值等于给定的参数。对于切片,数组和map,验证元素个数。
ne=10 //和eq相反
oneof=red green (oneof=5 7 9) //对于字符串,整数和uint,oneof将确保该值是参数中的值之一。参数应该是由空格分隔的值列表。值可以是字符串或数字。
gt=10 //对于数字,这将确保该值大于给定的参数。对于字符串,它会检查字符串长度是否大于该字符数。对于切片,数组和map,它会验证元素个数。
gt //对于time.Time确保时间值大于time.Now.UTC()
gte=10 //大于等于
gte //对于time.Time确保时间值大于或等于time.Now.UTC()
lt=10 //小于
lt //对于time.Time确保时间值小于time.Now.UTC()
lte=10 //小于等于
lte //对于time.Time
go中validate中的验证规则
最新推荐文章于 2023-12-01 07:35:00 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)