0

请您帮我解决以下问题:

我有 2 个域类(父、子),我不想映射到表,所以我把mapWith=none. 但是,当我这样做时,parent.validate()我希望将验证级联给孩子。如何为未映射到表的域对象启用级联验证?

提前谢谢了!

4

1 回答 1

0

不知道能不能按设计来。

您可以选择在父对象上添加 customValidation() 方法以启动检查,该检查循环遍历子对象并调用它们的 validate() 方法。然后可以将子对象上的任何错误添加到父对象的错误对象中。

boolean cascadedValidation() {
    this.validate();

    children.each {
        if (!it.validate()) {
           it.errors.allErrors.each { err ->
               // Bind somewhere on parent object
           }
        }
    }

    return this.hasErrors();
}
于 2012-10-12T10:04:28.133 回答