这是我的代码:m.Get("/", func(r render.Render) string { t := template.New("some template") toto := "titi" templateh := "<html>Hello world! {{ toto }} <form name='input' action='../first' method='post' ><input type='texte' name='toto'><input type='submit' value='Submit'></form></html>" t, _ = t.Parse(templateh) var doc bytes.Buffer err := t.Execute(&doc, toto) if err != nil { fmt.Println("There was an error:", err) } s := doc.String() fmt.Println(s) return s})它返回一个运行时错误:无效的内存地址或零指针取消引用我不明白为什么...
1 回答
千巷猫影
TA贡献1829条经验 获得超7个赞
电话
t, _ = t.Parse(templateh)
返回 nil 和错误一个错误,指出函数“todo”未定义。模板 Execute 方法取消引用 nil 指针,导致恐慌。
你应该改变两件事:
检查并处理从解析调用返回的错误。这是使用template.Must辅助函数的好地方。
通过替换
{{ todo }}
来修复模板{{.}}
- 1 回答
- 0 关注
- 211 浏览
添加回答
举报
0/150
提交
取消