// PutRegion accepts a request to retrieve information about a particular region. // // PUT /api/regions/:region // func PutRegion(c web.C, w http.ResponseWriter, r *http.Request) { var ( ctx = context.FromC(c) idStr = c.URLParams["region"] region model.Region ) id, err := strconv.ParseInt(idStr, 10, 64) if err != nil { w.WriteHeader(http.StatusBadRequest) return } if !regionFromRequest(c, w, r, ®ion) { return } region.ID = id err = datastore.UpdateRegion(ctx, ®ion) if err != nil { log.FromContext(ctx).WithField("err", err).Error("Error updating region") w.WriteHeader(http.StatusNotFound) return } json.NewEncoder(w).Encode(®ion) }