yjp 1 år sedan
förälder
incheckning
3a988cded2
2 ändrade filer med 13 tillägg och 1 borttagningar
  1. 8 0
      README.md
  2. 5 1
      framework/core/tag/check/validate.go

+ 8 - 0
README.md

@@ -187,6 +187,14 @@ binding是一种机制,围绕应用将API,基础设施以及领域进行绑
 | trimPrefix | 字段如果是string,可以指定需要trim前缀的字符,trim前缀后赋值,不能包含';',如果使用特殊字符,如'\n','\t'等,需要使用''包含,不能以'作为开始和结尾字符              |
 | trimSuffix | 字段如果是string,可以指定需要trim后缀的字符,trim后缀后赋值,不能包含';',如果使用特殊字符,如'\n','\t'等,需要使用''包含,不能以'作为开始和结尾字符              |
 
+### 7.3 check
+
+check封装了validator包,在validator包基础上扩展了自己的tag
+
+| Tag      | 说明            |
+|----------|---------------|
+| timezero | 判断time是否为zero |
+
 ## 8. 便捷包
 
 便捷包主要为了简化开发,一般均以可配置的方式定义方法,提供服务和网关两方面的便捷包,搭配使用。目前支持的便捷包主要有以下几个:

+ 5 - 1
framework/core/tag/check/validate.go

@@ -43,9 +43,13 @@ func registerCustomTags() {
 		case time.Time:
 			return value.IsZero()
 		case *time.Time:
+			if value == nil {
+				return true
+			}
+
 			return value.IsZero()
 		default:
-			return fieldValue.IsZero()
+			return false
 		}
 	}); err != nil {
 		fmt.Println(err)