是否可以在golang中渲染多个同名的html模板。原因是,我想制作一个布局并将其重复用于多个 View 。例如:
{{define "MainLayout"}}
<html>
<head>
<title>{{.Title}}</title>
</head>
<body>
<div>{{template "Content" .}}</div>
</body>
</html>
{{end}}
内容可以是不同的模板,所有模板都由{{define "Content"}}
定义最佳答案
我相信 elithrar 有您正在寻找的东西,但不幸的是,它目前不受支持。处理此问题的典型方法是在它们自己的模板中定义页眉和页脚,然后执行与您的方法相反的操作。您可以将提供给模板解析器的结构传递到这些模板中以呈现您的页面。
{{define "header"}}
<html>...
{{end}}
{{define "footer"}}
...</html>
{{end}}
{{define "Content"}}
{{template "header" .}}
HTML
{{template "footer" .}}
{{end}}
关于caching - Golang 多模板缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34831763/