在Golang开发中,模板引擎是非常重要的一部分,它能够帮助开发者更方便地渲染HTML页面。而Fiber作为Golang的轻量级Web框架,也提供了自己的模板引擎。在使用Fiber的过程中,有时候会遇到"模板不存在"的问题,这个问题可能是由于路径设置不正确或者文件确实不存在所导致。在本文中,php小编柚子将为大家详细解析这个问题的原因,并给出解决方案,帮助大家更好地使用Fiber模板引擎进行HTML渲染。
问题内容
在我的 ubuntu 22.10 digitalocean 服务器上,我正在尝试使用 golang 和 fiber 以及 html 模板引擎。到目前为止很喜欢它。
一切正常,包括 mysql 连接和发送电子邮件。除了一件事。
我不断收到错误渲染:模板索引不存在。
文件系统:
├── /gogo
├── main
├── main.go
├── go.mod
├── go.sum
├── /views
└── index.html
└── /public
└── plaatje.png
我的main.go的代码:
package main
import (
"fmt"
"log"
fiber "github.com/gofiber/fiber/v2"
"github.com/gofiber/template/html"
)
func main() {
// initialize standard go html template engine
template_engine := html.new(
"./views",
".html",
)
// start fiber
app := fiber.new(fiber.config{
views: template_engine,
})
// add static folder
app.static(
"/static", // mount address
"./public", // path to the file folder
)
// endpoint
app.get("/", func(c *fiber.ctx) error {
// render index template
return c.render("index", fiber.map{
"title": "it works",
"plat": "almost",
})
})
log.fatal(app.listen(":9990"))
}
index.html 文件:
{{.Title}}
{{.Title}}
{{.Plat}}