2 回答

TA貢獻1836條經驗 獲得超13個贊
只需將resfrom的數據類型更改Placeholder為map[int]Placeholder。
userId := 1
res := map[int]Placeholder{
userId: {
id: 1,
title: "delectus aut autem",
completed: false,
},
}
fmt.Printf("%v", res)
游樂場: https: //play.golang.org/p/rCBl2r7fQTe

TA貢獻1829條經驗 獲得超4個贊
您可以使用json:",inline".
注意:不要忽略實際代碼中的錯誤!
type Placeholder struct {
ID int `json:"id"`
Title string `json:"title"`
Completed bool `json:"completed"`
}
type PlaceholderWithUserID struct {
UserID int `json:"userId"`
Placeholder `json:",inline"`
}
type PlaceholderMap map[int]Placeholder
func main() {
var res PlaceholderWithUserID
_ = json.Unmarshal([]byte(`{"userId": 1, "id": 1, "title": "delectus aut autem", "completed": false}`), &res)
mapping := PlaceholderMap{
res.UserID: res.Placeholder,
}
out, _ := json.Marshal(mapping)
fmt.Println(string(out))
}
- 2 回答
- 0 關注
- 123 瀏覽
添加回答
舉報