Reputation: 5063
I am working on a API-Rest in Golang. I'm using Gorm so I have the structs that represent the database tables. In Create I receive a Form with the values, but right now am having a doubt of how can I assign inmediatly all the values to the structure, because I have a table with 5 hundred fields and I cannot make assignments one by one, I was doint in this way:
json.NewDecoder(req.Body).Decode(&myobject)
But there I had to receive a Json, and the client side is sending me a Form. So, how can I assign that values in a clean and readable way?
Upvotes: 6
Views: 13157
Reputation: 46562
There is no built-in way of unmarshalling a multipart/form-data body into a struct. However, Go does automatically parse form data into a map[string][]string
in Request.Form
, which you could convert to a map[string]string
with a simple loop. Then you could transfer that to a struct yourself using reflection, or you could use a library like mapstructure or gorilla/schema.
Upvotes: 10