github.com/gogf/gf@v1.16.9/.example/util/gvalid/gvalid.go (about)

     1  package main
     2  
     3  import (
     4  	"context"
     5  	"github.com/gogf/gf/frame/g"
     6  	"github.com/gogf/gf/util/gvalid"
     7  )
     8  
     9  func main() {
    10  	//rule := "length:6,16"
    11  	//if m := gvalid.Check(context.TODO(), "123456", rule, nil);  m != nil {
    12  	//    fmt.Println(m)
    13  	//}
    14  	//if m := gvalid.Check(context.TODO(), "12345", rule, nil);  m != nil {
    15  	//    fmt.Println(m)
    16  	//    // map[length:字段长度为6到16个字符]
    17  	//}
    18  
    19  	//rule := "integer|between:6,16"
    20  	//msgs := "请输入一个整数|参数大小不对啊老铁"
    21  	//fmt.Println(gvalid.Check(context.TODO(), "5.66", rule, msgs))
    22  	//// map[integer:请输入一个整数 between:参数大小不对啊老铁]
    23  
    24  	//// 参数长度至少为6个数字或者6个字母,但是总长度不能超过16个字符
    25  	//rule := `regex:\d{6,}|\D{6,}|max-length:16`
    26  	//if m := gvalid.Check(context.TODO(), "123456", rule, nil);  m != nil {
    27  	//    fmt.Println(m)
    28  	//}
    29  	//if m := gvalid.Check(context.TODO(), "abcde6", rule, nil);  m != nil {
    30  	//    fmt.Println(m)
    31  	//    // map[regex:字段值不合法]
    32  	//}
    33  
    34  	//params := map[string]string {
    35  	//    "passport"  : "john",
    36  	//    "password"  : "123456",
    37  	//    "password2" : "1234567",
    38  	//}
    39  	//rules := map[string]string {
    40  	//    "passport"  : "required|length:6,16",
    41  	//    "password"  : "required|length:6,16|same:password2",
    42  	//    "password2" : "required|length:6,16",
    43  	//}
    44  	//fmt.Println(gvalid.CheckMap(context.TODO(), params, rules))
    45  	//// map[passport:map[length:字段长度为6到16个字符] password:map[same:字段值不合法]]
    46  
    47  	params := map[string]interface{}{
    48  		"passport":  "john",
    49  		"password":  "123456",
    50  		"password2": "1234567",
    51  		"name":      "gf",
    52  	}
    53  	rules := map[string]string{
    54  		"passport":  "required|length:6,16",
    55  		"password":  "required|length:6,16|same:password2",
    56  		"password2": "required|length:6,16",
    57  		"name":      "size:5",
    58  	}
    59  	msgs := map[string]interface{}{
    60  		"passport": "账号不能为空|账号长度应当在:min到:max之间",
    61  		"password": map[string]string{
    62  			"required": "密码不能为空",
    63  			"same":     "两次密码输入不相等",
    64  		},
    65  		"name": "名字长度必须为:size",
    66  	}
    67  	if e := gvalid.CheckMap(context.TODO(), params, rules, msgs); e != nil {
    68  		g.Dump(e.Maps())
    69  	}
    70  	// map[passport:map[length:账号长度应当在6到16之间] password:map[same:两次密码输入不相等]]
    71  }