Validar campo baseado em outro campo
18/10/2014 18:48
static constraints = {
situacao blank:false, inList:['Ativo', 'Inativo', 'Aluno']
registro validator: {val, obj ->
if(obj.situacao == 'Ativo' && !val){
return ['registroObrigatorio']
}
}
}
if(obj.situacao == 'Ativo' && !val){
return false
}else{ return true }
static constraints = {
situacao (blank:false, inList:['Ativo', 'Inativo', 'Aluno'])
registro (validator:{value, thiz, errors -> return thiz.validatorsService.registroValidator(value, thiz, errors)})
}
class ValidatorsService {
def registroValidator = { value, autorizacaoInstance, errors ->
if(obj.situacao == 'Ativo' && !val){
errors.rejectValue( "registro", "chave_para_mensagem_de_error_do_i18n", [parametro1_para_mensagem_internacionalizada, parametroN_para_mensagem_internacionalizada] as Object[], "mensagem_padrão")
return false
}else{ return true }
}
}
Para se registrar, clique aqui.