是否可以在初始定义后向Form的映射中添加字段?

时间:2013-01-21 10:50:08

标签: scala playframework-2.0

说我有一个小形式,例如:

val myForm = Form(
  mapping(
    "street" -> nonEmptyText,
    "streetNumber" -> nonEmptyText
  )(myApply)(myUnapply)
)

有没有办法在稍后的时间点向myForm的映射添加字段? (即根据某些标准添加"apartmentFloor" -> text映射或"houseName" -> text

2 个答案:

答案 0 :(得分:3)

详见this answer,映射可以单独定义,并以各种形式组合。

您还可以动态构建表单,如下所示:

def passwordResetRequest() = Action {
   Form("email" -> email).bindFromRequest(...,...)
}

答案 1 :(得分:1)

这似乎不可能。

框架定义Mapping-Trait,它似乎不允许修改(即它是不可变的)。您可以实现自己的映射,允许稍后进行修改,但我认为Play开发人员在设计这样的特征时会有一些想法。