核心知识点
quickstart
package main
import (
"os"
"text/template"
)
type Inventory struct {
Material string
Count uint
}
func main() {
// 准备动态数据
sweaters := Inventory{"wool", 17}
// 创建模板实例
tmpl, err := template.New("test").Parse("{{.Count}} items are made of {{.Material}}")
if err != nil {
panic(err)
}
// 渲染模板
err = tmpl.Execute(os.Stdout, sweaters)
if err != nil {
panic(err)
}
}
循环
<h1>Members</h1>
<ul>
{% for user in users %}
<li>{{ user.username|e }}</li>
{% endfor %}
</ul>
{# 字典 #}
<dl>
{% for key, value in my_dict.items() %}
<dt>{{ key|e }}</dt>
<dd>{{ value|e }}</dd>
{% endfor %}
</dl>
{# 其它高级特性: loop.xxx变量 #}
{# 文档: https://jinja.palletsprojects.com/en/3.1.x/templates/#for #}