像Golang一样在Golang中打印网页源代码的部分内容

时间:2014-08-20 12:32:46

标签: go web-frameworks

我正在尝试使用Go lang生成一个网页。我目前正在使用Goji框架(http://goji.io),我想生成网页主体的所有头部和部分,但后来我希望根据结果来编写一些内容。代码。

例如,在PHP中,可以编写HTML,js或CSS,然后在PHP标记中编写在那里解释的代码。

我如何编写我的html,css和js,然后在其中包含在呈现页面时编译和执行的Golang代码?

1 个答案:

答案 0 :(得分:3)

issue 13中所述,请使用Go html/template包。

// Shorthand
type M map[string]interface{}

func viewHandler(c web.C, w http.ResponseWriter, r *http.Request) {
    title := c.URLParams["title"]
    p, err := loadPage(title)
    if err != nil {
        ...
    }
    // do other things

    template.ExecuteTemplate(w, "results.html", M{
            "title": title,
            "results": results,
            "pagination": true,
         }
    }
  

results.html

{{range .Results }}
   <h1>{{ Result.Name }}</h1>
   <p>{{ Result.Body }}</p>
 {{ end }}

zenazn/goji/example/main.go中建议使用模板。

elithrar还引用了in the comments&#34; Writing Web Applications article, section The html/template package&#34;更多。