diff --git a/utils.go b/utils.go index 0afcb4ba..df23cb8e 100644 --- a/utils.go +++ b/utils.go @@ -195,6 +195,8 @@ func ParseForm(form url.Values, obj interface{}) error { var tag string if len(tags) == 0 || len(tags[0]) == 0 { tag = fieldT.Name + } else if tags[0] == "-" { + continue } else { tag = tags[0] } diff --git a/utils_test.go b/utils_test.go index 994846fe..6075b445 100644 --- a/utils_test.go +++ b/utils_test.go @@ -104,8 +104,8 @@ func TestInSlice(t *testing.T) { func TestParseForm(t *testing.T) { type user struct { - Id int - tag string `form:tag` + Id int `form:"-"` + tag string `form:"tag"` Name interface{} `form:"username"` Age int `form:"age,text"` Email string @@ -114,6 +114,8 @@ func TestParseForm(t *testing.T) { u := user{} form := url.Values{ + "Id": []string{"1"}, + "-": []string{"1"}, "tag": []string{"no"}, "username": []string{"test"}, "age": []string{"40"},