在Play(Scala)框架中为表单创建一般(非特定于字段)错误消息

时间:2015-05-06 21:29:28

标签: forms scala playframework

我可以创建一个自定义字段特定的错误消息,如下所示:

Form(form.mapping, Map(), Seq(FormError("postcode", "Not recognised")), None)))

如何为表单而不是特定字段创建自定义常规错误消息?类似的东西:

Form(form.mapping, Map(), Seq(FormError(None, "Could not send")), None)))

1 个答案:

答案 0 :(得分:1)

您正在寻找一个全局错误,它只是一个没有密钥的FormError(空String,因为它不是Option)。 Form有一个名为withGlobalError的方法,您可以在其中传递错误消息和其他参数。在您的情况下,如果您有一些Form

val form: Form[?] = ???

form.withGlobalError("Could not send")

withGlobalError只需调用withError,这大致相当于您的第二个代码段,但最终会在copy上执行Form。您还可以看到source

在您的示例的上下文中,它将如下所示:

Form(form.mapping, Map(), Seq(FormError("", "Could not send")), None)))