问题:
在我的 Web 应用程序中,我定义了一些约束。当约束属性不匹配时,我也可以将域类保存到“草稿”,我将约束设置nullable
为true
. 在接下来的过程中,我可以修改对象,然后完成我想要进行完整验证的过程。这意味着我想添加该nullable:false
属性。
- 问题 1:有没有办法在运行时扩展/更改约束?
- 问题 2:当域类具有嵌套约束(例如其他域类引用)时,是否有办法遍历所有约束
谢谢
问题:
在我的 Web 应用程序中,我定义了一些约束。当约束属性不匹配时,我也可以将域类保存到“草稿”,我将约束设置nullable
为true
. 在接下来的过程中,我可以修改对象,然后完成我想要进行完整验证的过程。这意味着我想添加该nullable:false
属性。
谢谢
所以例子:
def user = new User()
for(constraint in user.constraints) {
constraint.value.setBlank(true)
constraint.value.setNullable(false)
}
对于嵌套字段:
for(constraint in user.someNestedFields.constraints) {
....
}
但我不建议这样做。它看起来像糟糕的架构。要保存您的域实体而不进行验证,只需调用save(false)
.