Gin: 如何从选择中获取多个值

创建于 2016-10-29  ·  3评论  ·  资料来源: gin-gonic/gin

大家好!

我对 Golang 很陌生,所以也许这是一个新手问题。
我想要做的是 - 添加标签字段,它是一个带有多个选项的 select2 选择框。 所以,基本上,它是以下 HTML:

<select name="tags" multiple="multiple">
   <option value="id_1">Prague</option>
   <option value="id_2">Novi Sad</option>
   <option value="id_3">Vienna</option>
</select>

但是如果我通过c.PostForm("tags")阅读它,它只会显示第一个值。

我还没有找到答案,但我发现我可以做下一个:

c.Request.ParseMultipartForm(5 * 1024 * 1024)
tags := c.Request.Form["tags"]
fmt.Println(tags)

它有效,但我想知道这是否是正确的方法。

谢谢!

question

最有用的评论

嗨,布卢姆卡,

首先,您必须将 select <select name="tags" multiple="multiple"><select name="tags[]" multiple="multiple">因为我们想要在数组中选择值。

然后,为您的表单声明一个结构体。

type Myform struct {
    Tags []string `form:"tags[]"`
}

Witch 更容易获得选定的输入。

var myform Myform
c.Bind(&myform)

fmt.Println(myform.Tags)

所有3条评论

嗨,布卢姆卡,

首先,您必须将 select <select name="tags" multiple="multiple"><select name="tags[]" multiple="multiple">因为我们想要在数组中选择值。

然后,为您的表单声明一个结构体。

type Myform struct {
    Tags []string `form:"tags[]"`
}

Witch 更容易获得选定的输入。

var myform Myform
c.Bind(&myform)

fmt.Println(myform.Tags)

@Bloomca @EtienneR评论是否解决了您的问题?

@appleboy是的,非常感谢! 很抱歉没有立即关闭它。

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

CodingPapi picture CodingPapi  ·  3评论

kekemuyu picture kekemuyu  ·  3评论

ccaza picture ccaza  ·  3评论

rawoke083 picture rawoke083  ·  3评论

lilee picture lilee  ·  3评论