我在創建一個可以傳遞給用戶顯示模板的sql結果片。我有以下內容:追加到結果片
type Post struct {
Title string
}
func landing(w http.ResponseWriter, r *http.Request){
posts := make([]Post, 0)
conn := OpenConnection()
defer conn.Close()
rows, err := conn.Query("SELECT p.title FROM posts p LIMIT 100")
if err != nil {
fmt.Println(err)
} else {
for rows.Next() {
var title string
rows.Scan(&title)
posts := append(posts, Post{Title: title}) //error thrown here
}
}
t, _ := template.ParseFiles("home.html")
t.Execute(w, posts)
}
func main() {
http.HandleFunc("/", landing)
}
在編譯時,我給出了錯誤posts declared and not used
。 如果我在追加調用後編譯,但似乎是在每次迭代中重置帖子的值而不是追加。
這樣做的正確方法是什麼?
我在猜測OP知道':='的意思,只是犯了一個錯誤。 ':='與'='有些相似。但是,這是內部範圍變量不被使用,而不是外部......只是要清楚。 – 2013-04-28 02:18:40