Vermeiden Sie, dass Schrägstriche in Vorlagen ausgeblendet werden

Ich arbeite daran, ein Lieblingsprojekt von Python nach Go zu konvertieren, um mich ein wenig mit der Sprache vertraut zu machen. Ein Problem, mit dem ich derzeit konfrontiert bin, ist, dass es meinen Schrägstrichen entgeht. Es wird also eine Zeichenkette erhalten wie:

/location/to/something

und es wird dann

%2flocation%2fto%2fsomething

Jetzt tut es dies nur, wenn es sich in einem Link befindet (nach dem, was ich gelesen habe, ist dieses Ausblenden kontextabhängig). Die Zeile in der HTML-Vorlage sieht also folgendermaßen aus:

<tr><td><a href="/file?file={{.FullFilePath}}">{{.FileName}}</a></td></tr>

Wie kann ich dies nach Möglichkeit in der Vorlage oder im Code selbst verhindern?

Dies ist, wie meine Vorlagenfunktion aussieht (ja, ich weiß, dass es hackisch ist)

func renderTemplate(w http.ResponseWriter, tmpl string) {
    t, err := template.ParseFiles(templates_dir+"base.html", templates_dir+tmpl)
    if err != nil {
        http.Error(w, err.Error(), http.StatusInternalServerError)
        return
    }
    if tmpl == "view.html" {
        err = t.Execute(w, FileList)
    } else {
        err = t.Execute(w, nil)
    }
    if err != nil {
        http.Error(w, err.Error(), http.StatusInternalServerError)
    }
}

Antworten auf die Frage(4)

Ihre Antwort auf die Frage