如何制作包含 [] 数组的 [] 数组和映射
How to make a []array & map with contains []array
如何制作像"Data":[{"3":{...}},{"4":{...}}]
这样的地图
控制器
jsons := make(map[string]interface{})
listUsers := identity.ListUsers()
users := make(map[int]interface{})
for k, j := range listUsers {
if j.Description != "" {
users[k] = j
}
}
jsons["Data"] = users
u.Data["json"] = jsons
u.ServeJSON()
JSON
"Data": {
"3": {
"default_project_id": "",
"description": "description",
"domain_id": "default",
"enabled": true
},
"5": {
"default_project_id": "9e266e1a750e45f8862e83341a5d0970",
"description": "description",
"domain_id": "default",
"enabled": true
}
}
listUsers []users.User
users map[int]interface{}
我只是想在得到答案后添加更多详细信息。
首先,"Data":[ "3":{...},"4":{...} ]
不是 json.You 的有效格式,不能将键值数据放入 []
中,{}
除外。所以 [=11 里面的东西=] 必须是 list.So 你可以像 "Data":[{"3":{...}},{"4":{...}}]
一样改变它。
然后更改控制器代码,如 users := make([]map[int]interface{},0)
我认为你应该创建新类型:
type AutoGenerated struct {
DefaultProjectID string `json:"default_project_id"`
Description string `json:"description"`
DomainID string `json:"domain_id"`
Enabled bool `json:"enabled"`
}
键入 MyType 映射[int]自动生成
我认为创建地图切片不是一个好主意,但可以:
type SliceMap []MyType
要从 JSON 生成新的 go-types,您可以使用:https://mholt.github.io/json-to-go/
如何制作像"Data":[{"3":{...}},{"4":{...}}]
控制器
jsons := make(map[string]interface{})
listUsers := identity.ListUsers()
users := make(map[int]interface{})
for k, j := range listUsers {
if j.Description != "" {
users[k] = j
}
}
jsons["Data"] = users
u.Data["json"] = jsons
u.ServeJSON()
JSON
"Data": {
"3": {
"default_project_id": "",
"description": "description",
"domain_id": "default",
"enabled": true
},
"5": {
"default_project_id": "9e266e1a750e45f8862e83341a5d0970",
"description": "description",
"domain_id": "default",
"enabled": true
}
}
listUsers []users.User users map[int]interface{}
我只是想在得到答案后添加更多详细信息。
首先,"Data":[ "3":{...},"4":{...} ]
不是 json.You 的有效格式,不能将键值数据放入 []
中,{}
除外。所以 [=11 里面的东西=] 必须是 list.So 你可以像 "Data":[{"3":{...}},{"4":{...}}]
一样改变它。
然后更改控制器代码,如 users := make([]map[int]interface{},0)
我认为你应该创建新类型:
type AutoGenerated struct {
DefaultProjectID string `json:"default_project_id"`
Description string `json:"description"`
DomainID string `json:"domain_id"`
Enabled bool `json:"enabled"`
}
键入 MyType 映射[int]自动生成
我认为创建地图切片不是一个好主意,但可以:
type SliceMap []MyType
要从 JSON 生成新的 go-types,您可以使用:https://mholt.github.io/json-to-go/