0

我想在 Go 中加载一个 HTML 模板文件夹,现在我只能将每个文件路径作为参数中的字符串传递。

例子:

templates = template.Must(template.ParseFiles("../web/html_templates/edit.html","../web/html_mplates/view.html"))

工作正常。

这个和类似的解决方案不起作用:

templates = template.Must(template.ParseFiles("../web/html_templates/*"))

我想在配置文件中指定我的模板,但我目前不能。解决这个问题的最佳方法是什么?

4

2 回答 2

4

使用ParseGlob在一次 API 调用中解析 HTML 模板文件夹。

templates = template.Must(template.ParseGlob("../web/html_templates/*.html"))

有关 glob 语法,请参阅Match函数文档。

于 2015-09-04T00:39:53.583 回答
3

您可以使用template.ParseFiles可变参数函数的事实:

var templatesFiles []string
// [...]
// Here fill the slice from your config file or any other source
// [...]
templates = template.Must(template.ParseFiles(templatesFiles...))
于 2015-09-04T01:02:58.017 回答