From fbd64d4f60c7bd70cac9d4b36d193d7e15c630e4 Mon Sep 17 00:00:00 2001 From: Alexander Lokhman Date: Wed, 25 Apr 2018 18:22:16 +0100 Subject: [PATCH] Add support of pointers in form binding --- binding/form_mapping.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/binding/form_mapping.go b/binding/form_mapping.go index 7c680d99..7d5c1022 100644 --- a/binding/form_mapping.go +++ b/binding/form_mapping.go @@ -112,6 +112,12 @@ func setWithProperType(valueKind reflect.Kind, val string, structField reflect.V return setFloatField(val, 64, structField) case reflect.String: structField.SetString(val) + case reflect.Ptr: + if !structField.Elem().IsValid() { + structField.Set(reflect.New(structField.Type().Elem())) + } + structFieldElem := structField.Elem() + return setWithProperType(structFieldElem.Kind(), val, structFieldElem) default: return errors.New("Unknown type") }