首页 > 解决方案 > 将 JSON Patch 有效负载编组到结构中 - rfc7396

问题描述

所以我正在尝试实现一个简单版本的 Merge Patch JSON (rfc7396)。这意味着在我传入的 json 有效负载中,某些字段可以 a)具有值 b)具有空值(在这种情况下,它们需要在服务器 db 中被取消)c)从 json 中省略。

payload: {
 a:"some value"
 b: null
}
type SomeStruct struct {
    A     *string `json:"a,omitempty"`
    B     *string `json:"b,omitempty"`
    C     *string `json:"c,omitempty"`
}

所以对于字段 b 和 c,当我将 json 解组到结构中时,两者都将是<nil>.

当我需要弄清楚如何更新我的数据库列时,这显然令人困惑——因为目的是 b 列应该被更改为 null 而 c 列应该被单独保留

只是想知道在 Go 中执行此操作的正确方法是什么。在 Node 中,字段可以是未定义的、null 或具有稍微容易一些的值。

标签: jsongo

解决方案


推荐阅读