使用Golang显示从数据库到模板的已解析html字符串

Given my model

type Criteria struct {
    ...
    CriteriaID      string        `db:"criteria_id"`
    CriteriaName    string        `db:"criteria_name"`
    ...

and controller

func CriteriaReadGET(w http.ResponseWriter, r *http.Request) {

    .....
    // Display the view
    v := view.New(r)
    v.Name = "criteria/read"
    v.Vars["criteria"] = result
    v.Render(w)
}

One of the column in the result (query result from my model) contain html tags, which is generated from ckeditor or similar plugin.

When I pass the output to my template,

{{.CriteriaName}}

it shows the html tags like

<ul>
<li>One</li>
<li>Two</li>
</ul>

How to show the content to looks like

  • One
  • Two

I just got the answer from another post I got after I post this question. Here's the post: Go template.ExecuteTemplate include html

All I need to change is from

type Criteria struct {
    ...
    CriteriaID      string        `db:"criteria_id"`
    CriteriaName    string        `db:"criteria_name"`
    ...

to

type Criteria struct {
    ...
    CriteriaID      string        `db:"criteria_id"`
    CriteriaName    template.HTML `db:"criteria_name"`
    ...

Hope this help someone having the same question.