【问题标题】:Is it possible to add fields to a Form's mapping after its initial definition?是否可以在初始定义后将字段添加到表单的映射中?
【发布时间】:2013-01-21 20:07:38
【问题描述】:

假设我有一个小表格,例如:

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

以后有没有办法将字段添加到 myForm 的映射中? (即根据某些标准添加"apartmentFloor" -> text 映射或"houseName" -> text

【问题讨论】:

    标签: scala playframework-2.0


    【解决方案1】:

    this answer 中所述,映射可以单独定义并以各种形式组合。

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

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

    【讨论】:

      【解决方案2】:

      这似乎是不可能的。

      框架定义了Mapping-Trait,它似乎不允许修改(即它是不可变的)。您可能可以实现自己的 Mapping 以允许稍后进行修改,但我认为 Play 开发人员在设计这样的 trait 时会考虑一些事情。

      【讨论】:

        猜你喜欢
        • 2023-01-24
        • 1970-01-01
        • 2018-10-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-12-10
        • 1970-01-01
        • 2020-01-24
        相关资源
        最近更新 更多