1

我正在尝试通过在我的表单上使用内置的 mkString 方法调用将错误消息显示到我的视图中。然而结果并不如预期:

我有:

    @productForm("name").errors().mkString(", ")

并且视图呈现以下内容:

    ValidationError(name,error.required,[])

我怎样才能显示确切的消息?

我正在使用 play 2.1.1(它是一个 java 项目)

谢谢

4

2 回答 2

2

@productForm("name").errors()返回ValidationError对象的集合。您想mkString在验证错误消息的集合上运行,因此您需要首先将您的ValidationError集合映射到字符串集合:

@productForm("name").errors().map(n => n.message).mkString(",")

我认为这现在会返回你error.required,这仍然不是你想要的。因此,当您映射时,您可能希望映射到 Messages API 查找:

@productForm("name").errors().map(n => Messages(n.message)).mkString(",")
于 2013-05-03T17:27:13.567 回答
0

如果您想要字段名称的错误而不是使用错误而不是错误

@productForm.error("name").message

如果您需要错误的参数,例如最大长度或您可以使用的任何参数

@productForm.error("name").arguments()
于 2013-05-03T21:32:32.237 回答