0
我已經在我的域名以下領域Grails領域驗證工作不
@BindingFormat('mm/dd/yyyy hh:mm a')
Date advertiseDate
@BindingFormat('mm/dd/yyyy hh:mm a')
Date closeDate
@BindingFormat('mm/dd/yyyy hh:mm a')
Date letDate
closeDate validator: { value, contract -> value >= contract.advertiseDate }
letDate validator: { value, contract -> value >= contract.closeDate }
我在messages.properties驗證錯誤文件
project.Contract.closeDate.validator.error = Close Date cannot be before Advertise Date
project.Contract.letDate.validator.error = Let Date cannot be before Close Date
出於某種原因,我的驗證似乎並沒有正在工作。我沒有收到任何錯誤,我只是沒有收到我的驗證錯誤。
這些驗證是在同一時間工作時,我使用只是一個mm/dd/yyyy
格式的jQuery的日期選擇器,但一旦我切換到一個jQuery的DateTimePicker與mm/dd/yyyy hh:mm a
格式它相當的工作。我所做的唯一的其他變化是包括以下
value="${formatDate(format:"MM/dd/yyyy hh:mm a", date:contractInstance?.letDate)}"
上像一個普惠制格式的任何幫助或想法,將不勝感激。
首先要確認他們是否被調用。這樣你就可以知道它是否與驗證器中的邏輯有關,或者阻止驗證器形式被調用。我建議在驗證器中添加一個println以在日誌中查看它是否被調用。例如:'println('in closeDate validator');' – David 2015-01-20 22:32:15
你應該在月份使用大寫M:'@BindingFormat('MM/dd/yyyy hh:mm a')' – user190117 2015-01-22 09:18:14