如何为违反grails域对象的约束设置自定义错误消息?

时间:2015-11-30 09:35:36

标签: grails grails-2.0

首先,域名定义如下:

package com.abc.def

class EventDonation implements Serializable{

    String title
    String body
    BigDecimal customDonationMin
    BigDecimal customDonationMax


    static constraints = {  
        title blank: false, nullable: false
        body blank: false, nullable: false
        customDonationMin min: BigDecimal.ZERO
    }
}

视图页面中呈现错误的部分如下:

   <g:hasErrors bean="${donation}">                                                         
        <g:eachError var="error" bean="${donation}">
            <li><g:message error="${error}"/></li>
        </g:eachError>
    </g:hasErrors>      

最后在message.properties中添加的行如下:

com.abc.def.eventDonation.customDonationMin.min = Minimum limit cannot be less than 0

但是显示的错误是:

customDonationMin in class com.abc.def.EventDonation with value -10 is less than minimum value 0

您知道没有显示自定义错误消息的原因吗?

1 个答案:

答案 0 :(得分:0)

原来我使用了错误的消息代码。这是min属性的消息代码。

className.propertyName.min.notmet

参考:http://grails.github.io/grails-doc/2.2.1/ref/Constraints/min.html