4

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{} マップに手動で接続することですが、大きなフォームの場合、これらは冗長で理想的ではないようです。

4

2 に答える 2

0

ここでの問題は、フォーム (表示されていません) がマルチパート フォームであったことです。 ParseFormマルチパートフォームを解析しないため、データがありません。ParseMultipartForm修正は、代わりに呼び出すことです。Gin Gonic for PostForm のメソッド (これはParseMultipartFormあなたを呼び出し、自動的に呼び出します) を指摘してくれた @phoet に感謝します。

于 2016-10-12T17:36:22.173 に答える