{{end}}`
var content = `{{define "content"}}
{{end}}`
var comment = `{{define "comment"}}
{{end}}`
type Tags struct {
Id int
Name string
}
type Content struct {
Id int
Title string
Content string
}
type Comment struct {
Id int
Note string
}
type Page struct {
Tags *Tags
Content *Content
Comment *Comment
}
func main() {
pagedata := &Page{Tags:&Tags{Id:1,Name:"golang"},Content: &Content{Id:9,Title:"Hello",Content:"World!"},Comment: &Comment{Id:2,Note:"Good Day!"}}
tmpl := template.New("page")
var err error
if tmpl,err = tmpl.Parse(page); err != nil {
fmt.Println(err)
}
if tmpl,err = tmpl.Parse(tags); err != nil {
fmt.Println(err)
}
if tmpl,err = tmpl.Parse(comment); err != nil {
fmt.Println(err)
}
if tmpl,err = tmpl.Parse(content); err != nil {
fmt.Println(err)
}
tmpl.Execute(os.Stdout,pagedata)
}