【发布时间】:2020-04-09 07:03:57
【问题描述】:
是否有一种简单的方法可以使用 Gin Gonic 列出/遍历所有帖子值? (走)
我试过了:
c.Request.ParseForm()
for key, value := range c.Request.PostForm {
log.Printf("POST %v = %v",key,value)
}
但这没有显示任何值,但是当我直接从上下文中测试值时:
log.Printf("POST email = %v", c.PostForm("email")
输出很好。
我要做的是将所有帖子值映射到 gin.H{} 上下文中,以便在失败时我可以将发布的值传递回 .HTML 模板上下文并预先填充它们(连同我的错误信息)。我发现最好的方法是将每个 POST 值手动连接到 gin.H{} 映射,但对于大型表单,这些似乎冗长且不理想。
【问题讨论】:
-
查看
c.PostForm()的实现,我假设PostForm尚未被解析,因此可能不包含任何值github.com/gin-gonic/gin/blob/develop/context.go#L264-L276 -
@phoet - 看起来像那样...但
ParseForm()不应该调用解析吗?解决方法是什么?我需要打电话给ParseMultipartForm吗?