go playgroundgolang JSONマーシャル:上記のコードに示すように、空のネストされた構造体を
を省略する方法、一方はJSONに表示する構造体に特定のフィールドを省略するjson:",omitempty"
を使用することができます。この場合
type ColorGroup struct {
ID int `json:",omitempty"`
Name string
Colors []string
}
type Total struct {
A ColorGroup`json:",omitempty"`
B string`json:",omitempty"`
}
group := Total{
A: ColorGroup{},
}
group := Total{
B:"abc",
}
A
まだjson.Marshal(group)
{"A":{"Name":"","Colors":null},"B":"abc"}
に現れた場合、
B
は、しかしながら
json.Marshal(group)
に表示されません
質問は我々だけ
{"B":"abc"}
EDIT入手行う方法です:いくつかのグーグル後 を、ここで提案use pointerはthe documentationからTotal
type Total struct {
A *ColorGroup`json:",omitempty"`
B string`json:",omitempty"`
}