前端之家收集整理的这篇文章主要介绍了
利用golang的template模板包进行web开发,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
- package main
-
- import (
- "fmt"
- "html/template"
- "net/http"
- "os"
- )
-
- type Person struct {
- Name string
- Age int
- Emails []string
- Company string
- Role string
- }
-
- type OnlineUser struct {
- User []*Person
- LoginTime string
- }
-
- func Handler(w http.ResponseWriter,r *http.Request) {
- dumx := Person{
- Name: "zoro",Age: 27,Emails: []string{"dg@gmail.com","dk@hotmail.com"},Company: "Omron",Role: "SE"}
-
- chxd := Person{Name: "chxd",Emails: []string{"test@gmail.com","d@hotmail.com"}}
-
- onlineUser := OnlineUser{User: []*Person{&dux,&ch}}
-
- //t := template.New("Person template")
- //t,err := t.Parse(templ)
- t,err := template.ParseFiles("tmpl.html")
- checkError(err)
-
- err = t.Execute(w,onlineUser)
- checkError(err)
- }
-
- func main() {
- http.HandleFunc("/",Handler)
- http.ListenAndServe(":8888",nil)
- }
-
- func checkError(err error) {
- if err != nil {
- fmt.Println("Fatal error ",err.Error())
- os.Exit(1)
- }
- }
- ======================================
- <html>
- <head>
- </head>
- <body>
- <form action="/test" method="POST">
- {{with .User}}
- {{range .}}
- <input type="radio" name="test" value={{.Name}}/>{{.Name}}<br/>
- {{end}}
- {{end}}
- <input type="submit" value="submit"/>
- </form>
- </body>
- </html>