validation - 如何仅在创建对象时应用 Play 2 唯一性验证?

标签 validation scala web playframework-2.0

如何仅在创建对象时应用 Play 2 唯一性验证?我可以添加自定义 verifying子句,但在编辑(而不是创建)现有对象时会失败。

最佳答案

如果您没有对版本和创建执行相同的验证检查,则可能意味着您不应该使用相同的 Form双方都反对?实际上,只有少数特定情况下使用相同的 Form 才有意义。用于在现实世界程序中创建和编辑的对象。

另一方面,如果你不想复制一些对创建和编辑通用的验证逻辑,你可以在你的两个 Form 中重用一个映射片段。对象:

val commonMapping = "common" -> tuple(
    "foo" -> number,
    "bar" -> nonEmptyText
)
val creationForm = Form(tuple(
    commonMapping,
    "baz" -> date
) verifying (/* creation specific constraint */))
val editionForm = Form(tuple(
    commonMapping,
    "bah" -> boolean
))

关于validation - 如何仅在创建对象时应用 Play 2 唯一性验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13714673/

相关文章:

javascript - 现代网络开发方法

web - 如何使用 ffmpeg 转换网页视频

javascript - 在 Ember- ember-validations 中动态设置验证对象

scala - 在我尝试使用 RUN 命令后,Emacs Ensime-sbt 没有响应进入

scala - Scala 中令人困惑的类型不匹配

scala - Gradle 任务 :compileScala fails on missing value for zincClasspath

Python:PIL/_imaging.so:无效的 ELF header

javascript - 在 HTML5 验证之前捕获提交

php - 直接将日期插入MySQL数据库安全吗?

javascript - 验证是否选中 1 到 3 个复选框但具有不同的 id