gpt4 book ai didi

go - Go 中的 HTML 渲染结构和数组

转载 作者:IT王子 更新时间:2023-10-29 02:28:06 25 4
gpt4 key购买 nike

我渲染模板:

w.Header().Set("Content-type", "text/html")
t, _ := template.ParseFiles("index.html")
t.Execute(w, &page{Title: "Title"})

效果很好。但是,例如,如果我有来自数据库的结构怎么办?

我如何用 Go 渲染它?有什么解决办法吗?

最佳答案

它的工作原理没有什么不同。 ExecuteTemplate 接受一个接口(interface){},因此您可以传递任何您想要的东西。

我通常像这样传递一个 map[string]interface{}:

// Shorthand
type M map[string]interface{}

...

err := t.ExecuteTemplate(w, "posts.tmpl", M{
"posts": &posts,
"user": &user,
"errors": []pageErrors,
}

// posts.tmpl

{{ posts.PostTitle }}
{{ with user }}
Hello, {{ Name }}!
{{ Email }}
{{ end }}
...

希望澄清。 Go docs有一个有用的示例,其中包括如何使用 html/template 包。

关于go - Go 中的 HTML 渲染结构和数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22120404/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com