How to include and execute HTML template?
Parse parses text as a template body for t. Named template definitions ({{define ...}} or {{block ...}} statements) in text define additional templates associated with t and are removed from the definition of t itself.
Execute applies a parsed template to the specified data object, writing the output to w. If an error occurs executing the template or writing its output, execution stops, but partial results may already have been written to the output writer. A template may be executed safely in parallel, although if parallel executions share a Writer the output may be interleaved.
Create test.html with below content:
Golang Template Example
Template Testing
Country is {{.Country}}
City is {{.City}}
Example
package main
import (
"fmt"
"html/template"
"net/http"
)
const (
Port = ":8080"
)
func serveStatic(w http.ResponseWriter, r *http.Request) {
t, err := template.ParseFiles("test.html")
if err != nil {
fmt.Println(err)
}
items := struct {
Country string
City string
}{
Country: "Australia",
City: "Paris",
}
t.Execute(w, items)
}
func main() {
http.HandleFunc("/",serveStatic)
http.ListenAndServe(Port, nil)
}
Most Helpful This Week
Get Set and Clear Session in Golang
Dynamic JSON parser without Struct in Golang
How to concatenate two or more slices in Golang?
What is GOPATH?
How to create Empty and Nil Slice?
Example of Sscan vs Sscanf vs Sscanln from FMT Package
How to count number of repeating words in a given String?
Data encryption with AES-GCM
How to add and update elements in Map?
Replace any non-alphanumeric character sequences with a dash using Regex