grails - 默认验证器上的自定义验证消息

标签 grails grails-2.0 grails-plugin

假设我有一些带有默认验证器的域类:

    class Employee {

        String name
        String primaryEmail
        String url

        static constraints = {
            name blank: false
            primaryEmail email: true, unique: true
            url blank: false, url: true

        }

    }

我想定义在验证失败的情况下应返回的消息名称,类似这样:
    class Employee {

        String name
        String primaryEmail
        String url

        static constraints = {
            name blank: false 'employee.invalid.name'
            primaryEmail email: true, unique: true
            url blank: false, url: true 'employee.invalid.email' 

        }

    }

有可能吗?谢谢!

最佳答案

定义自己的自定义消息实际上非常简单。但是,这里的方法不正确。

首先,看看validation reference以了解如何构造验证消息代码。

使用您的示例,您的一些自定义消息将是:

employee.name.blank=Custom message about invalid employee due to blank
employee.url.blank=Another custom message about blank url
employee.url.url.invalid=Custom invalid url message

消息是每种约束类型的,因此对于每个属性只有一个全局消息是行不通的。您将需要为可能失败的每个约束提供消息。

关于grails - 默认验证器上的自定义验证消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25932595/

相关文章:

javascript - 如何使用angularjs json数据为选择2下拉菜单设置默认值

grails - 是否可以跳过插件的grailsVersion验证而不必 checkout 本地副本

rest - Grails REST Controller 响应不正确的内容类型

maven - grails-2.3.7 插件/存储库未找到

grails - 升级到Grails 2.0:/index.gsp找不到

hibernate - 如何在grails中检索具有唯一空键的行?

grails - Grails 2.3.8检查URL映射是否出现字符串

grails - Grails数据库迁移负载数据

grails - 如何让IntelliJ IDEA识别Grails数据库迁移插件的DSL?

grails - 是否可以在AWS Lambda上运行Groovy Grails应用程序