如何在 Go Gin 中使用模板获取动态内容
How to use templates in Go Gin for dynamic content
我有一个简单的 Go / Gin 网络应用程序。我需要在 html 模板中添加一些动态内容。
例如我有几张表(数字是动态的),有几行(数字是动态的)。我需要将它们放入 html 模板中。有没有办法在代码中组合模板?我更喜欢使用模板而不是在代码中构建表。
我查看了一个教程https://github.com/gin-gonic/gin,但那里没有介绍。
您可以使用 define
定义分音,使用 template
混合多个 HTML 分音。
package main
import (
"html/template"
"github.com/gin-gonic/gin"
)
var (
partial1 = `{{define "elm1"}}<div>element1</div>{{end}}`
partial2 = `{{define "elm2"}}<div>element2</div>{{end}}`
body = `{{template "elm1"}}{{template "elm2"}}`
)
func main() {
// Or use `ParseFiles` to parse tmpl files instead
t := template.Must(template.New("elements").Parse(body))
app := gin.Default()
app.GET("/", func(c *gin.Context) {
c.HTML(200, "elements", nil)
})
app.Run(":8000")
}
我有一个简单的 Go / Gin 网络应用程序。我需要在 html 模板中添加一些动态内容。
例如我有几张表(数字是动态的),有几行(数字是动态的)。我需要将它们放入 html 模板中。有没有办法在代码中组合模板?我更喜欢使用模板而不是在代码中构建表。
我查看了一个教程https://github.com/gin-gonic/gin,但那里没有介绍。
您可以使用 define
定义分音,使用 template
混合多个 HTML 分音。
package main
import (
"html/template"
"github.com/gin-gonic/gin"
)
var (
partial1 = `{{define "elm1"}}<div>element1</div>{{end}}`
partial2 = `{{define "elm2"}}<div>element2</div>{{end}}`
body = `{{template "elm1"}}{{template "elm2"}}`
)
func main() {
// Or use `ParseFiles` to parse tmpl files instead
t := template.Must(template.New("elements").Parse(body))
app := gin.Default()
app.GET("/", func(c *gin.Context) {
c.HTML(200, "elements", nil)
})
app.Run(":8000")
}