将表单值分配给Golang中的struct

时间:2017-05-18 15:44:22

标签: json forms go

我正在开发Golang中的API-Rest。我使用Gorm,所以我有表示数据库表的结构。在创建中,我收到一个带有值的表单,但是现在我怀疑如何将所有值中的所有值分配给结构,因为我有一个包含500个字段的表,我无法制作一个接一个的作业,我这样做是这样的:

json.NewDecoder(req.Body).Decode(&myobject)

但是我必须收到一个Json,而客户端正在给我发送一份表格。那么,我该如何以干净和可读的方式分配这些值呢?

1 个答案:

答案 0 :(得分:4)

没有内置的方法将multipart / form-data主体解组为struct。但是,Go 会自动将表单数据解析为map[string][]string中的Request.Form,您可以使用简单循环将其转换为map[string]string。然后,您可以使用反射将其转移到结构中,或者您可以使用mapstructuregorilla/schema之类的库。