Как я могу указать метод PATCH, какое поле я хочу обновить? - PullRequest
0 голосов
/ 07 мая 2019

Я работаю над простым REST API и у меня возникают проблемы с методом PATCH.Я не знаю, как я могу сказать методу и запросу, какие поля я хочу обновить (например, какие поля передаются как JSON) в базе данных.Вот что у меня есть.

func PatchServer(c echo.Context) error {
    patchedServer := new(structs.Server)
    requestID := c.Param("id")
    if err := c.Bind(patchedServer); err != nil {
        return err
    }
        sql := "UPDATE servers SET server_name = CASE WHEN ? IS NOT NULL THEN ? END WHERE id = ?"
        stmt, err := db.Get().Prepare(sql)
    if err != nil {
        panic(err)
    }
    _, err2 := stmt.Exec(patchedServer.Name, patchedServer.Name, requestID)
    if err2 != nil {
        panic(err2)
    }
    fmt.Println(patchedServer.ID, patchedServer.Name, patchedServer.Components)
    fmt.Println("Requested id: ", requestID)
    return c.JSON(http.StatusOK, "Patched!")
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...