登录
首页 >  Golang >  Go问答

遍历模板中的地图

来源:Golang技术栈

时间:2023-04-29 22:29:57 149浏览 收藏

珍惜时间,勤奋学习!今天给大家带来《遍历模板中的地图》,正文内容主要涉及到golang等等,如果你正在学习Golang,或者是对Golang有疑问,欢迎大家关注我!后面我会持续更新相关内容的,希望都能帮到正在学习的大家!

问题内容

我正在尝试显示健身课程列表(瑜伽、普拉提等)。对于每种课程类型都有几个课程,所以我想将所有的瑜伽课程和所有的普拉提课程等分组。

我做了这个函数来截取切片并制作它的地图

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 leebrooks0@gmail.com 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 

正确答案

检查 Go 模板文档中的[变量部分](http://golang.org/pkg/text/template/#hdr- Variables)。一个范围可以声明两个变量,用逗号分隔。以下应该有效:

{{ range $key, $value := . }}
   
  • {{ $key }}: {{ $value }}
  • {{ end }}

    今天带大家了解了golang的相关知识,希望对你有所帮助;关于Golang的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

    声明:本文转载于:Golang技术栈 如有侵犯,请联系study_golang@163.com删除
    相关阅读
    更多>
    最新阅读
    更多>
    课程推荐
    更多>