将通过调用 Grails 域对象上的 validate() 收到的面向开发人员的验证错误列表转换为面向用户的错误消息的最佳方法是什么?
示例:
值为 [x] 的类 [class testproj.AuthUser] 的属性 [email] 不是有效的电子邮件地址
宁愿阅读:
给定的电子邮件不是有效的电子邮件地址
有没有内置的东西已经这样做了?
将通过调用 Grails 域对象上的 validate() 收到的面向开发人员的验证错误列表转换为面向用户的错误消息的最佳方法是什么?
示例:
值为 [x] 的类 [class testproj.AuthUser] 的属性 [email] 不是有效的电子邮件地址
宁愿阅读:
给定的电子邮件不是有效的电子邮件地址
有没有内置的东西已经这样做了?
中的messages.properties
文件grails-app/i18n
查看此文档 http://grails.org/doc/latest/guide/7.%20Validation.html
要获取所有错误代码,请查看此处http://grails.org/doc/latest/ref/Constraints/email.html。启用右侧的快速导航。每个约束的底部是用于更改错误消息的属性键。
还有一个不错的插件叫做:
grails install-plugin i18n-templates
可以在这里找到http://www.grails.org/plugin/i18n-templates
例如,您在“org.example.User”中有一个域类,并且您想指定本地化消息。使用以下命令:
grails generate-i18n-messages org.example.User
这将在控制台中为您生成可能的消息列表。将此输出复制并粘贴到您messages.properties
的英语语言中,以及您想要本地化的语言的所有其他 message.properties 中。
然后,您只需编辑这些属性文件即可使您的页面本地化。Eclipse/STS 有一个不错的 GUI,它使这些属性文件的本地化速度更快。
问候,
简