
在Golang开发中,模板引擎是非常重要的一部分,它能够帮助开发者更方便地渲染HTML页面。而Fiber作为Golang的轻量级Web框架,也提供了自己的模板引擎。在使用Fiber的过程中,有时候会遇到"模板不存在"的问题,这个问题可能是由于路径设置不正确或者文件确实不存在所导致。在本文中,php小编柚子将为大家详细解析这个问题的原因,并给出解决方案,帮助大家更好地使用Fiber模板引擎进行HTML渲染。
在我的 ubuntu 22.10 digitalocean 服务器上,我正在尝试使用 golang 和 fiber 以及 html 模板引擎。到目前为止很喜欢它。
一切正常,包括 mysql 连接和发送电子邮件。除了一件事。
我不断收到错误渲染:模板索引不存在。
立即学习“go语言免费学习笔记(深入)”;
文件系统:
├── /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 文件:
<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Unicode">
<title>{{.Title}}</title>
</head>
<body>
<h1>{{.Title}}</h1>
<p>{{.Plat}}</p>
<p><img src="./static/plaatje.png"></p>
</body>
</html>当我在 mac 上本地运行它时,一切正常,并且模板按其应有的方式呈现。
但是在 ubuntu 服务器上,除了模板之外,一切正常,并出现给定的错误:
渲染:模板索引不存在
我尝试在 ubuntu 中更改所有权和权限:没有结果。然而,这对我来说有点盲点,所以这可能仍然是问题......
我尝试修改视图路径(./views、/views、views.etc):没有结果。
我尝试过 return c.render("index.html", fiber.map{: 没有结果。
我错过了什么?
查找错误,它会出现在光纤信息框上方。对我来说是这样的:2023/03/12 15:40:58 [警告]:无法加载视图:模板:apply:9:函数“t”未定义。如果您的模板编译,将使用相对路径找到它们。
以上就是Golang Fiber 模板引擎 HTML:渲染:模板不存在的详细内容,更多请关注php中文网其它相关文章!
HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号