我只是不了解Go模板和相对路径...
使用以下目录结构:
Application Directory
program.go
program executable
-- css
program.css
-- pages
index.gohtml
wartree.gohtml
目前,我的模板是纯html格式,已经在不同环境中使用了几年。
我有以下Go代码:
package main
import (
"fmt"
"log"
"net/http"
"html/template"
)
func main() {
http.HandleFunc("/", index)
http.HandleFunc("/wartree", wartree)
log.Fatal(http.ListenAndServe(":8080", nil))
}
func index(w http.ResponseWriter, r *http.Request) {
fmt.Println("Index has been called...")
tmpl := template.Must(template.ParseGlob("pages/*"))
tmpl.Execute(w, nil)
}
func wartree(w http.ResponseWriter, r *http.Request) {
fmt.Println("wartree has been called...")
tmpl := template.Must(template.ParseFiles("wartree.gohtml"))
tmpl.Execute(w, nil)
}
两个模板的HTML模板头中都有以下行... <link href="css/nav.css" type="text/css" media="screen" />
执行程序时,未使用css,并且无法调用Wartree模板。它只是再次调用索引?
我什至尝试将css的路径更改为绝对路径,但这没什么区别,而且Go或浏览器也没有错误。
我只是不了解Go模板和路径。我想。