我的百里香码:
Your favorite number: <input type="text" th:field="*{xy}"/>
我的messages.properties:
required={0} is required
typeMismatch.java.lang.Integer={0} is not a number
当用户未填写此字段或输入错误数据时,此消息已自动显示:
xy is required
或
xy is not a number
但是我想设置字段名称“你喜欢的号码”而不是“xy”,所以我想在出错时显示这些消息:
Your favorite number is required
或
Your favorite number is not a number
如何为{0}
设置字段名称?
答案 0 :(得分:0)
根据this question,您可以在消息密钥后指定消息参数。所以你应该能够做到这样的事情:
<div th:text="#{${error}('Your favorite number')}">Error message</div>
这会将{0}
参数填入您传递的任何内容中。 error
是包含验证消息的变量(可能来自对hasErrors
或类似的调用)。
您甚至可以将字段名称移动到邮件属性中,在这种情况下,您只需要嵌套另一条消息:
<div th:text="#{${error}(#{field.xy})}">Error message</div>
在message.properties
:
field.xy=Your favorite number
然后,这会将field.xy
消息的内容插入验证消息的占位符{0}
。