Validation Grail命令对象实例验证?

Validation Grail命令对象实例验证?,validation,grails,command-objects,Validation,Grails,Command Objects,假设我有一个包含七个字段(字符串星期一、字符串星期二,…)的命令对象,我需要验证它以检查其中是否至少存在一个字段 由于使用Grails1.3.7,我尝试将实例验证与扩展验证插件(非富域)一起使用,但无法使其工作。基本上,它不能识别静态约束块中的非字段验证器 静态约束={ 可用性已选择(验证程序:{ ... }) 我得到: 异常消息:没有这样的属性:availabilitySelected 还有其他聪明的方法吗?我只是不想为我的命令对象中的每个字段添加验证器 谢谢您可以通过自定义验证器的两个/三

假设我有一个包含七个字段(字符串星期一、字符串星期二,…)的命令对象,我需要验证它以检查其中是否至少存在一个字段

由于使用Grails1.3.7,我尝试将实例验证与扩展验证插件(非富域)一起使用,但无法使其工作。基本上,它不能识别静态约束块中的非字段验证器

静态约束={ 可用性已选择(验证程序:{ ... })

我得到:

异常消息:没有这样的属性:availabilitySelected

还有其他聪明的方法吗?我只是不想为我的命令对象中的每个字段添加验证器


谢谢

您可以通过自定义验证器的两个/三个参数形式访问正在验证的对象

myField(validator: { val, obj, errors -> if( obj.blah.empty && obj.blah.empty ) { errors.reject( ... ) } )

谢谢,我已将验证移到其中一个字段(“星期一”)我只是觉得有一个更好的方法可以做到这一点。例如,在我的测试中,我必须检查'monday'字段错误,它实际上没有那么描述性,因为当没有选择任何内容时,问题是整个command对象的实例没有'monday'字段。不,只需传入errors对象并执行errors.reject而不是errors.rejectv价值-