нормально отображается в принте, но плохо присваивается в мапе?
for _, fieldSort := range value.Sorts {
sort.Slice(top, func(i, j int) bool {
return top[i]["data"].(map[string]int)[fieldSort] > top[j]["data"].(map[string]int)[fieldSort]
})
if len(top) > 5 {
top = top[:5]
}
fmt.Println(topName+"/"+game+"_"+fieldSort)
if _, ok := TopList[topName]; !ok {
TopList[topName] = make(map[string][]map[string]interface{})
}
TopList[topName][game+"_"+fieldSort] = top
fmt.Println(TopList[topName][game+"_"+fieldSort])
}
По итогу записывается только последний отсортированный в цикле массив
а что значит «плохо присваивается в мапе»?
По итогу записывается только последний отсортированный в цикле массив
Если вы код закинете на play.golang.org, он будет читаемее гораздо
Вы же в мапу заносите один и тот же slice. Нужно копию делать как минимум.
Да, я разобрался уже, предполагал в тот момент, что в этом проблема, но и копию делал, результата не было. Просто копию я делал поздно. Спасибо за помощь
Обсуждают сегодня