Пользовательская проверка Grails

Я хотел бы убедиться, что два поля не равны и одно больше другого. Сказать yearBorn а также yearMarried, Они не могут быть равны и yearMarried должно быть больше, чем yearBorn,

1 ответ

Вы можете использовать двухпараметрический пользовательский валидатор, который имеет доступ как к проверяемому значению, так и ко всему экземпляру:

static constraints = {
   yearMarried validator: { year, instance ->
      if (year == instance.yearBorn) {
         return 'i18n.code.for.equal.value'
      }
      if (year <= instance.yearBorn) {
         return 'i18n.code.for.born.after.married'
      }
   }
}
Другие вопросы по тегам