Page MenuHomePhabricator
Paste P53729

Triggering go template errors (script)
ActivePublic

Authored by BBlack on Nov 22 2023, 5:45 PM.
Referenced Files
F41524138: Triggering go template errors (script)
Nov 22 2023, 5:45 PM
Subscribers
None
package main
import (
"os"
"fmt"
"text/template"
)
type Pet struct {
Name string
Sex string
Intact bool
Age string
Breed string
}
func do_template(x []Pet) {
var tmplFile = "pets.tmpl"
tmpl, err := template.New(tmplFile).ParseFiles(tmplFile)
if err != nil {
panic(err)
}
err = tmpl.Execute(os.Stdout, x)
if err != nil {
panic(err)
}
}
func main() {
dogs := []Pet{
{
Name: "Jujube",
Sex: "Female",
Intact: false,
Age: "10 months",
Breed: "German Shepherd/Pitbull",
},
{
Name: "Zephyr",
Sex: "Male",
Intact: true,
Age: "13 years, 3 months",
Breed: "German Shepherd/Border Collie",
},
}
dogs_empty := []Pet{}
fmt.Println("=========== Executing Template with data on two dogs ============")
do_template(dogs)
fmt.Println("=========== Executing Template with empty data ============")
do_template(dogs_empty)
} // end main