Как я могу создать вложенный массив JSON? Есть ли другой простой способ сделать это?
Я пробовал это:
var m1 = make(map[string]interface{})
m1 = append(tickets, ptotal) //error is here
i.Data["json"] = m1
i.ServeJSON()
но он показывает эту ошибку:
cannot use append(tickets, ptotal) (type []interface {}) as type map[string]interface {} in assignment
Я могу сделать это, но он вообще не вложен:
// some := append(tickets, map[string]int64{"totalpage": ptotal})
Я хочу этот JSON:
[
{tickets
name:value,
},
],
[
{
totalpage: 10
}
]
Хочу лайк моя детская площадка
определите m1 как []interface{}

var tickets []interface{}
var ptotal int64
tickets, ptotal, err := models.GetAllTicket(query, fields, sortby, order, offset, limit)
if err != nil {
// bulabula
}
i.Data["json"] = append(tickets, map[string]int64{"totalpage": ptotal})
tickets, ptotal, err := models.GetAllTicket(query, fields, sortby, order, offset, limit) вот как я беру 3 переменные, билеты tickets []interface{} общая сумма int64 ошибка errorя не уверен, что понял, что вы имеете в виду
но я объявляю переменную, используя := в tickets, ptotal, err :=, но почему я должен использовать var поверх нее? Пожалуйста, объясни?
Ой, не надо, я просто хочу уточнить про тип значения
попробуй это:
var data = map[string]map[string]string{
"ticket": map[string]string{},
"totalpage": map[string]string{},
"c": map[string]string{},
}
data["ticket"]["w"] = "vrniairvnai"
data["totalpage"]["w"] = "ten"
fmt.Println(data)
var data2 = make(map[string]interface{})
data2["data"] = data
data2["int"] = 10
fmt.Println(data2)
тип m1 — карта, но тип результата добавления — список