Grails 3:以编程方式调用约束验证方法

时间:2018-08-06 23:31:06

标签: validation grails

如何在Grails中访问预先建立的约束验证?

例如,让我说,我想在range对象上使用Map验证器

Map<String, Double> myData

static constraints = {
   myData validator: { val, obj, errors ->
       //Iterate through all Double values and validate using `range` constraint
   }
}

必须编写我自己的range验证方法似乎没有任何意义,因为Grails在某个地方已经有一个内置的。我该如何访问?

仅需说明,range约束只是一个示例。只是在寻找如何访问所有这些预制房屋。

更新

用一个简单的例子来澄清。我知道如何以标准方式使用约束。我正在尝试以编程方式使用约束验证,而我无法找到其文档。

def myMethod() {
    int myInt = 5;

    //HOW DO I CALL RANGE (OR ANY) OF THE PRE-BUILT VALIDATION METHODS
    if(RANGE(myInt, 0..5)) {
        //DO SOMETHING
    }
}

就像我说的那样,如果车轮已经存在,我不想重新发明。验证约束所使用的API必须在某处,如何手动调用这些API?

1 个答案:

答案 0 :(得分:0)

myDate range: 18..65 //could be age of a person for example

来自:http://docs.grails.org/3.2.7/ref/Constraints/range.html