Gehe Template-Funktion
Beim Versuch, Go-Vorlagen zu verwenden, ist mir eine seltsame Sache aufgefallenFuncs
undFuncMap
. Der folgende Code funktioniert wie erwartet:
<code>buffer := bytes.NewBufferString("") funcMap := template.FuncMap{ "label": strings.Title, } t, _ := template.New("alex").Funcs(funcMap).Parse("{{label \"alex\"}}") t.Execute(buffer, "") return string(buffer.Bytes()) //=> "Alex" </code>
Aber wenn ich versuche, die Vorlage in eine Datei zu setzen, funktioniert es nicht (Execute()
sagt:"alex" is an incomplete or empty template
):
<code>t, _ := template.New("alex").Funcs(funcMap).ParseFiles("template.html") </code>
Mit template.html:
<code>{{label \"alex\"}} </code>
Irgendeine Idee warum? Ist das ein Bug? Gibt es einfachere Möglichkeiten, Methoden / Funktionen in Vorlagen zu verwenden?