Я пытаюсь отобразить список занятий в тренажерном зале (йога, пилатес и т. Д.). Для каждого типа класса существует несколько классов, поэтому я хочу сгруппировать все классы йоги и все классы Пилатеса и так далее.Итерация через карту в шаблоне
Я сделал эту функцию, чтобы взять кусочек и сделать карту его
func groupClasses(classes []entities.Class) map[string][]entities.Class {
classMap := make(map[string][]entities.Class)
for _, class := range classes {
classMap[class.ClassType.Name] = append(classMap[class.ClassType.Name], class)
}
return classMap
}
Проблема в том, как теперь я могу итерацию через него, согласно http://golang.org/pkg/text/template/, вы должны получить доступ к нему в формате .Key
, я не знаю ключей (если я также не передал кусок ключей в шаблон). Как распаковать эту карту на мой взгляд.
Все, что я в настоящее время
{{ . }}
, который показывает что-то вроде:
map[Pilates:[{102 PILATES ~/mobifit/video/ocen.mpg 169 40 2014-05-03 23:12:12 +0000 UTC 2014-05-03 23:12:12 +0000 UTC 1899-12-30 00:00:00 +0000 UTC {PILATES Pilates 1 2014-01-22 21:46:16 +0000 UTC} {1 [email protected] password SUPERADMIN Lee Brooks {Male true} {1990-07-11 00:00:00 +0000 UTC true} {1.85 true} {88 true} 2014-01-22 21:46:16 +0000 UTC {0001-01-01 00:00:00 +0000 UTC false} {0001-01-01 00:00:00 +0000 UTC false} {0001-01-01 00:00:00 +0000 UTC false}} [{1 Mat 2014-01-22 21:46:16 +0000 UTC}]} {70 PILATES ~/mobifit/video/ocen.mpg 119 66 2014-03-31 15:12:12 +0000 UTC 2014-03-31 15:12:12 +0000 UTC 1899-12-30 00:00:00 +0000 UTC
Большое спасибо за код примера – Lee
@lee Добро пожаловать! :) Думал, что это может быть полезно, даже если Герман уже дал вам правильный ответ. – ANisus