1 回答

TA貢獻1802條經驗 獲得超4個贊
如果您傳遞給"content"模板執行的管道值為dataFinal,那么您必須使用兩個{{range}}操作,因為dataFinal它本身是一個切片(類型為[]models.Data),Data.IData也是一個切片(類型為[]model.User)。
在內部{{range}}你可以參考User.Name類似.Name:
<li>{{.Name}}</li>
請參閱此工作示例:
const templ = `{{define "content"}}
<h2>THIS IS THE BODY CONTENT</h2>
<ul>
{{.}}
{{range .}}
<ul>
{{range .IData}}
<li>{{.Name}}</li>
{{end}}
</ul>
{{end}}
</ul>
{{end}}`
// Parsing and executing the template:
t := template.Must(template.New("").Parse(templ))
fmt.Println(t.ExecuteTemplate(os.Stdout, "content", dataFinal))
輸出(在Go Playground上試試):
<h2>THIS IS THE BODY CONTENT</h2>
<ul>
[{content [{jon [email protected]}]} {content [{jon [email protected]}]}]
<ul>
<li>jon</li>
</ul>
<ul>
<li>jon</li>
</ul>
</ul>
<nil>
- 1 回答
- 0 關注
- 131 瀏覽
添加回答
舉報