如何覆盖 Grails 中的默认错误消息?
Posted
技术标签:
【中文标题】如何覆盖 Grails 中的默认错误消息?【英文标题】:How can I override the default error message in Grails? 【发布时间】:2011-06-22 19:08:44 【问题描述】:我有一个带有姓氏字段的 Person 对象。姓氏字段不能为空。当用户在lastName字段中提交表单空白值时,用户看到的错误信息是:
Property [lastName] of class [com.example.Person] cannot be blank
这个错误信息很糟糕。我想将其自定义为更用户友好的内容,例如“姓氏字段不能为空”
我该怎么做?
【问题讨论】:
【参考方案1】:参见文档第 7 章:http://grails.org/doc/latest/
您将更改 grails-app/i18n/messages.properties
并添加
person.lastName.blank=The Last Name field cannot be blank
【讨论】:
谢谢。我花了很多时间试图找到那个 - 不知何故我在那个页面上错过了它。 每个约束页面中还有关于它使用的属性名称的信息 - 这些信息位于约束部分的左侧框架中。例如。 creditCard 约束使用 'className.propertyName.creditCard.invalid' - 请参阅 grails.org/doc/latest/ref/Constraints/creditCard.html 以获取直接链接。 它对我不起作用。似乎 grails 版本不同会导致此问题。 这里与 Grails 2.5.0 相同。我无法覆盖插件中的消息。 我在 Grails 2.5.0 中也看到了这个问题 - 无法覆盖来自插件的消息【参考方案2】:在 Grails 3 中,您需要更改 grails-app/i18n/messages.properties:
default.blank.message=0 字段不能为空
【讨论】:
以上是关于如何覆盖 Grails 中的默认错误消息?的主要内容,如果未能解决你的问题,请参考以下文章