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 关注
- 106 浏览
添加回答
举报