From b293b6eaa6b305bbac2147f76d5722607e8aa04b Mon Sep 17 00:00:00 2001 From: Unknwon <joe2010xtmf@163.com> Date: Sun, 1 Feb 2015 12:41:03 -0500 Subject: cmd: CMD option for port number of `gogs web` to prevent first time run conflict - routers: use new binding convention to simplify code - templates: able to set HTTP port number in install page --- modules/auth/auth.go | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'modules/auth/auth.go') diff --git a/modules/auth/auth.go b/modules/auth/auth.go index 1dd96d8d..ad7ce5b9 100644 --- a/modules/auth/auth.go +++ b/modules/auth/auth.go @@ -9,6 +9,7 @@ import ( "reflect" "strings" + "github.com/Unknwon/com" "github.com/Unknwon/macaron" "github.com/macaron-contrib/binding" "github.com/macaron-contrib/session" @@ -135,6 +136,10 @@ type Form interface { binding.Validator } +func init() { + binding.SetNameMapper(com.ToSnakeCase) +} + // AssignForm assign form values back to the template data. func AssignForm(form interface{}, data map[string]interface{}) { typ := reflect.TypeOf(form) @@ -152,6 +157,8 @@ func AssignForm(form interface{}, data map[string]interface{}) { // Allow ignored fields in the struct if fieldName == "-" { continue + } else if len(fieldName) == 0 { + fieldName = com.ToSnakeCase(field.Name) } data[fieldName] = val.Field(i).Interface() -- cgit v1.2.3