ユーザーが送信したテキスト フィールド (生年月日) に制約を追加しようとしています。ユーザーは 18 歳以上である必要がありますが、113 歳以上であることはできません。
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時間ずれました。ローカルからアプリを再起動しようとすると、アプリがクラッシュしました。それ以来、私はそれを再現することはできません。
その日付は「エポック」の日付、または Unix が開始される直前の日付であることがわかりました。それを回避する方法がわかりません。
この問題に関するアイデア/提案/懸念/経験はありますか? どんな助けでも大歓迎です。