diff options
| -rw-r--r-- | main.go | 11 |
1 files changed, 3 insertions, 8 deletions
@@ -55,17 +55,12 @@ func mainHandler(ds DataStore, w http.ResponseWriter, r *http.Request) { func parseValues(values url.Values) map[int]url.Values { parts := make(map[int]url.Values) - var letter string + var field string var idx int for key, value := range values { - _, err := fmt.Sscanf(key, "%1s[%d]", &letter, &idx) - if err != nil { - continue - } - if _, ok := parts[idx]; !ok { - parts[idx] = make(url.Values) + if _, err := fmt.Sscanf(key, "%s[%d]", &field, &idx); err != nil { + parts[idx][field] = append(parts[idx][field], value...) } - parts[idx][letter] = value } return parts } |
