我目前正在使用Grails應用程序,並且想要更改在我的域模型中顯示對象的默認錯誤消息。我相信我所做的一切都是正確的,但也許有人可以幫我解決這個問題,下面的代碼:Grails自定義驗證消息不起作用?
域模型:
class Details {
long mobileNo
String name
static constraints = {
mobileNo(blank:false, maxsize:12, matches:"44[0-9]{10}")
}
}
messages.properties
sms.mobileNo.matches.invalid=You must enter a correct mobile number in {0}
查看
現在,當點擊它進入到下面的控制器功能在網頁上創建:
def details = new Details(params)
if (details.validate()) {
}
else{
render view: 'create', model: [detailsInstance: details]
}
現在我希望申請到這樣的工作:一個錯誤的數據傳遞給控制器它認爲它是無效的,然後將錯誤的模型傳遞迴相同的視圖。然後,錯誤消息被拉到messages.properties文件中的數據不正確的地方。不過,我希望看到這一點:
You must enter a correct mobile number in [mobileNo]
我,而不是看到這一點:
Failed to convert property value of type java.lang.String to required type long for property mobileNo; nested exception is java.lang.IllegalArgumentException: Could not parse number: Unparseable number: "gg"
是否有人可以幫助我來生成以顯示有用的信息給用戶進行驗證自定義消息?謝謝
非常感謝這是一個很好的幫助,現在我已經對它進行了排序:-D – user723858