gpt4 book ai didi

http - 向 Struct 添加一些日期,然后将其放入 go 模板中

转载 作者:数据小太阳 更新时间:2023-10-29 03:40:38 26 4
gpt4 key购买 nike

我有一个文件 controllers/catalog.go,它包含一个 HTTP 处理程序:

func Catalog(w http.ResponseWriter, r *http.Request) {
if r.Method != "GET" {
http.Error(w, http.StatusText(405), http.StatusMethodNotAllowed)
return
}

categories, err := models.GetCategories()
if err != nil {
http.Error(w, http.StatusText(500), http.StatusInternalServerError)
return
}
fmt.Print(categories)
config.TPL.ExecuteTemplate(w, "catalog.html", categories)
}

和模型/getcategories.go:

type Cat_tree struct {
Cat_id int
Parent_id int
Cat_name string
}

func GetCategories() ([]Cat_tree, error) {
rows, err := config.DB.Query("SELECT cat_id, parent_id, cat_name FROM categories WHERE active = true ORDER BY Parent_id ASC")
if err != nil {
return nil, err
}
defer rows.Close()

categories := make([]Cat_tree, 0)

for rows.Next() {
cat := Cat_tree{}
err := rows.Scan(&cat.Cat_id, &cat.Parent_id, &cat.Cat_name)
if err != nil {
return nil, err
}
categories = append(categories, cat)
}
if err = rows.Err(); err != nil {
return nil, err
}

return categories, nil
}

例如,我如何将一些数据添加到类别页面标题

现在在这样的模板中

   {{range .}}
<p><a href="/show?getinfo={{ .Cat_id}}">{{ .Cat_id}}</a> - {{ .Parent_id}} - {{ .Cat_name}} <a href="/show?getinfo={{ .Cat_id}}">Показать</a>
{{end}}

我想添加一些{{Title}}

最佳答案

我通常传入模板的是一个map[string]interface{}:

data := make(map[string]interface{})
data["Categories"] = categories
data["Title"] = "This is the title"
config.TPL.ExecuteTemplate(w, "catalog.html", data)

<title>{{.Title}}</title>
<body>
{{range .Categories}}
<p><a href="/show?getinfo={{ .Cat_id}}">{{ .Cat_id}}</a> - {{ .Parent_id}} - {{ .Cat_name}} <a href="/show?getinfo={{ .Cat_id}}">Показать</a>
{{end}}
</body>

关于http - 向 Struct 添加一些日期,然后将其放入 go 模板中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53898190/

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