У меня есть форма, которая содержит несколько строк, у каждой есть флажок в начале.Пользователь может выбрать некоторые из них, а затем нажать кнопку «Удалить выбранные строки» для отправки.
Опубликованные данные выглядят следующим образом:
id=1&id=2&id=3
Я хочу получить их в действии, мой код:
def delete = Action { implicit request =>
Form("id"->seq(nonEmptyText)).bindFromRequest.fold(
errors => BadRequest,
ids => {
println(ids) // (!)
for(id<-ids) deleteRow(id)
}
)
}
Но я обнаружил, что идентификаторы всегда были List()
, пустой список.
Я проверил «Образцы форм», предоставленные play2, и обнаружил, что seq(...)
следуетРаботает только с опубликованными данными в таком формате:
company sdfdsf
firstname sdfds
informations[0].email sdf@sdf.com
informations[0].label wef
informations[0].phones[0] 234234
informations[0].phones[1] 234234
informations[0].phones[x]
informations[1].email sdf@sdf.com
informations[1].label wefwef
informations[1].phones[0] 234234
informations[1].phones[x]
informations[x].email
informations[x].label
informations[x].phones[x]
Обратите внимание, что в именах параметров много [0]
или других индексов.