我试图添加约束到用户提交的文本字段,这是有出生日期。我需要用户至少18岁,但不能超过113岁。Grails日期约束
final static Date MIN_DATE = new Date(Calendar.YEAR-18)
final static Date MAX_DATE = new Date(Calendar.YEAR-100)
static constraints = {
dob(nullabe: false, min: MIN_DATE, max: MAX_DATE
}
我,
System.out.println('Year Max Date: ' + person.MAX_DATE)
它给了我,
Year Max Date: Wed Dec 31 17:59:59 CST 1969
也是如此最小日期。
我试着做
final static Date MIN_DATE = new Date().getAt(Calendar.YEAR)-18
,但没有在所有的工作。我也尝试过不用-18
,并得到了正确的答案,但它是7个小时了。当我试图从本地重新启动应用程序时,它将其崩溃。从那以后,我无法重现它。
我已经了解到,它给出的日期是“Epoch”日期或Unix启动之前的日期。我只是不知道如何解决它。
对这个问题有任何想法/建议/疑虑/经验? 任何帮助将不胜感激。
其员工使用的应用程序。它只是在那里捕捉和避免错别字。但是,这工作得很好。非常感谢。实际上,逻辑上,最小和最大需要切换。我非常感谢帮助! – CoffeePeddlerIntern 2013-02-22 16:36:43