Golang,在新模板中清空响应

时间:2015-12-05 11:47:14

标签: go

indexHandler工作完美! writeHandler - 回复我的空白页面。模板是一样的。无法理解问题所在。请检查以下代码

func indexHandler(w http.ResponseWriter, r *http.Request) {
    t, err := template.ParseFiles("templates/index.html", "templates/header.html", "templates/footer.html")
    if err != nil {
        fmt.Fprintf(w, err.Error())
    }
    t.ExecuteTemplate(w, "index", nil)
}

func writeHandler(w http.ResponseWriter, r *http.Request) {
    fmt.Fprintf((w), "write")

    t, err := template.ParseFiles("templates/write.html", "templates/header.html", "templates/footer.html")
    if err != nil {
        fmt.Fprintf(w, err.Error())
    }

    t.ExecuteTemplate(w, "write", nil)
}

func main() {
    http.HandleFunc("/", indexHandler)
    http.HandleFunc("/write", writeHandler)
    http.ListenAndServe(":3000", nil)
}

write.html看起来像

{{ define "write" }}

{{ template "header" }}

<h1>It works!</h1>

{{ template "footer" }}

{{ end }}

头:

{{ define "header" }}
<!DOCTYPE html>
<html>
<head>
<body>
<h1>HEADER</h1>
{{ end }}

页脚:

{{ define "footer" }}
</body>
</html>
{{ end }}

源代码树:

templates
---header.html
---index.html
---footer.html
---write.html

0 个答案:

没有答案