gpt4 book ai didi

json - 如何在 json 中显示结构的映射键和值

转载 作者:数据小太阳 更新时间:2023-10-29 03:34:51 26 4
gpt4 key购买 nike

我有这段代码。

package main

import (
"github.com/gin-gonic/gin"
_ "github.com/go-sql-driver/mysql"
)

func divisionsHandler(c *gin.Context) {
divisions := getDivisionRows()
json := make(map[int]string)
for divisions.Next() {
var d Division
err := divisions.Scan(&d.id, &d.name)
json[d.id] = d.name
if err != nil {
panic(err.Error())
}
}
c.JSON(200, json)
}

结果是

{
1: "games",
2: "technology",
3: "tekk",
4: "home entertainment",
5: "toys & stationery"
}

我正在尝试将该 json 转换成类似的格式

{
[{
"id": 1,
"name": "games"
},
...
]
}

但是如何呢?

最佳答案

所以你想要一个 json 数组而不是 json 对象?

为什么不加载一个 map[int]string,而是简单地创建一个 []Division

list := []Division{}
for divisions.Next() {
var d Division
err := divisions.Scan(&d.id, &d.name)
list = append(list, d)
if err != nil {
panic(err.Error())
}
}

您需要将字段名称更改为 IDName 以便 json 包可以序列化它们,但您最终应该得到更像这样的东西:

[
{"ID":1,"Name":"Games},
...
]

关于json - 如何在 json 中显示结构的映射键和值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45483655/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com