我試圖使GO與谷歌App Engine的一個網頁,其中可以顯示與HTML解析數組的內容。如何GO解析HTML模板,谷歌應用程序引擎
package hello
import (
"fmt"
"html/template"
"net/http"
)
func init() {
http.HandleFunc("/", root)
}
const TemplateHTML = `
<html>
<body>
<table width="700" border="1" align="center">
<tr>
<td>
{{range}} {{.name}} {{end}} {{range}} {{.Count}} {{end}}
</td>
</tr>
</table>
</body>
</html>
`
func root(w http.ResponseWriter, r *http.Request) {
type variables struct {
Name string
Count int
}
var data = []variables{
{"John", 25},
{"George", 35},
{"NoName", 27},
}
//name := variables{"Somebody", 25}
tmpl, err := template.New("i").Parse(TemplateHTML)
if err != nil {
fmt.Fprint(w, err)
}
err = tmpl.Execute(w, data)
if err != nil {
fmt.Fprint(w, err)
}
}
但我只得到一個內部服務器錯誤。
當我使用err = tmpl.Execute(w, name)
(你可以在代碼的註釋中找到'name'),那沒問題。
你有什麼想法是什麼問題?我是golang的新手。
謝謝!
謝謝你的答案。現在它運作良好。 :) – valaki
@valaki當然,高興地幫忙! – RocketDonkey
這是不對的。不需要在'[]變量'的片段文字中說'變量'。該更改對編譯的代碼沒有影響。 – dsymonds