首页 > 后端开发 > Golang > 如何使用Go访问HTML模板中Map元素的Struct字段?

如何使用Go访问HTML模板中Map元素的Struct字段?

Mary-Kate Olsen
发布: 2024-10-24 07:27:02
原创
985 人浏览过

How to Access Struct Field of Map Element in HTML Template with Go?

使用 Go 访问 HTML 模板中映射元素的结构字段

在 Go 模板中使用映射和结构时,重要的是要确保可以从模板访问字段。在这种情况下,taskMap 将 Task 结构体保存为值,并使用“.desc”访问任务描述。

要访问模板中的字段,必须导出它们。这是通过将结构体定义中的字段名称大写来实现的:

<code class="go">type Task struct {
   cmd string
   args []string
   Desc string // Capitalized to export the field
}</code>
登录后复制

同样,通过大写“Desc”来更新映射条目和模板引用:

<code class="go">var taskMap = map[string]Task{
    "find": Task{
        cmd: "find",
        args: []string{"/tmp/"},
        Desc: "find files in /tmp dir",
    },
    "grep": Task{
        cmd: "grep",
        args:[]string{"foo","/tmp/*", "-R"},
        Desc: "grep files match having foo",
    },
}

<html>
{{range $key, $value := .}}
   <li>Task Name:        {{$key}}</li>
   <li>Task Value:       {{$value}}</li>
   <li>Task description: {{$value.Desc}}</li>
{{end}}
</html></code>
登录后复制

通过这些修改,模板将成功显示每个任务的描述字段。

以上是如何使用Go访问HTML模板中Map元素的Struct字段?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板