2
我正在使用模板成功獲取所有數據並顯示在表中。我在此代碼中使用Go查詢數據存儲,並將Membership作爲實體類型。將* datastore.Key添加到切片
在html頁面中,顯示所有數據,但不顯示鍵。
我試圖將Key *datastore.Key
作爲屬性添加到Membership
結構中,但仍然沒有運氣。
這裏是我的代碼:
package hello
import (
"appengine"
"appengine/datastore"
"html/template"
"net/http"
"time"
)
type Membership struct {
Key *datastore.Key
Author string
Content string
FirstName string
LastName string
Address string
Email string
Grade string
Date time.Time
}
func init() {
http.HandleFunc("/", members)
}
func members(w http.ResponseWriter, r *http.Request) {
c := appengine.NewContext(r)
q := datastore.NewQuery("Membership").Order("-Date")
memberships := make([]Membership, 0, 10)
if _, err := q.GetAll(c, &memberships); err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
return
}
if err := membersTemplate.Execute(w, memberships); err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
}
}
var membersTemplate = template.Must(template.New("page").Parse(membersTemplateHTML))
const membersTemplateHTML = `
<html>
<body>
<table><tr><th>Key</th><th>Name</th><th>Email</th><th>Adress</th><th>Grade</th></tr>
{{range .}}
<tr>
<td>{{.Key}}</td>
<td>{{.FirstName}} {{.LastName}}</td>
<td>{{.Email}}</td>
<td>{{.Address}}</td>
<td>{{.Grade}}</td>
</tr>
{{end}}
</table>
</body>
</html>`
感謝這個解決方案,它的工作原理! ;-) – sagit
@ user1949730不要忘記標記爲答案。只需點擊勾號。很高興它對你有效 :) – Testuser