Привет всем!
Я новичок в Голанге, так что, возможно, это вопрос для новичков.
То, что я пытаюсь сделать, - добавить поле тегов, и это поле выбора 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)
Это работает, но мне интересно, правильный это подход или нет.
Спасибо!
Привет, Блумка,
Сначала вы должны изменить свой выбор <select name="tags" multiple="multiple">
на <select name="tags[]" multiple="multiple">
потому что мы хотим получить значения, выбранные в массиве.
Затем объявите структуру для вашей формы.
type Myform struct {
Tags []string `form:"tags[]"`
}
Ведьма проще получить выбранные входы.
var myform Myform
c.Bind(&myform)
fmt.Println(myform.Tags)
@Bloomca Комментарий решает вашу проблему?
@appleboy да, большое спасибо! Извините, что не закрыл его сразу.
Самый полезный комментарий
Привет, Блумка,
Сначала вы должны изменить свой выбор
<select name="tags" multiple="multiple">
на<select name="tags[]" multiple="multiple">
потому что мы хотим получить значения, выбранные в массиве.Затем объявите структуру для вашей формы.
Ведьма проще получить выбранные входы.