1

我是新玩框架的新手,在访问控制器中的复选框时遇到了一些困难。我的看法是:-

@(img:Form[Image])
@helper.form(action = routes.Application.abc) {
    <li><input name="item[0]" value="pt" type=checkBox></li>
            <li><input name="item[1]" value="sumit" type=checkBox></li>
    <p>
               <button type=submit id=imgButton>submit</button>
    </p>

    }

我的控制器是:-

def abc = Action{
    implicit request =>
      val values =ImageForm.bindFromRequest.get
      println("mapinggg"+values)
      Ok("hi")
  }

我处理复选框的案例类是:-

case class Image (desc:List[String])

形式是

val ImageForm =Form(
       mapping(
           "desc" -> list(text)
           )(Image.apply)(Image.unapply)
       )

但是当我通过选择复选框单击提交时它返回零?它以 Image(List()) 的形式提供输出,但我想要选定复选框的列表

4

1 回答 1

0

输入的名称(“item” - 不带索引)需要与列表映射的键(此处以“desc”给出)匹配才能成功绑定。如果您将 ImageForm 映射更改为:

val ImageForm =Form(
   mapping(
       "item" -> list(text)
   )(Image.apply)(Image.unapply)
)

请注意,您的案例类中的实际字段名称- “desc” - 在这里应该无关紧要。

于 2013-08-27T12:42:27.877 回答