如何在grails更新期间验证域类字段

时间:2009-10-29 21:29:48

标签: grails validation

有自然键定义如下的域类

class InterestGroup {
String intGrp
String name

static constraints = {
    intGrp(blank: false, maxSize: 4, unique: true)
    name(blank: false, minSize: 10, maxSize: 50)
}

static mapping = {
    id generator: "assigned", name: "intGrp", type: 'string'
}

String toString() { "${intGrp}"} 
}

我尝试修改标准脚手架以更改名称字段。 在标准代码中有调用的save()方法,它检查所有字段,当然记录无法更新,因为存在具有相同键的记录。当我只分配字段值

interestGroupInstance.name = params?.name

名称已更新,但未针对域类constaint进行检查。 使用基于自然键的表实现CRUD操作的最佳方法是什么? 最好的祝福 Krzysiek

1 个答案:

答案 0 :(得分:0)

我认为我不了解你。你想做什么?您正在尝试更新您的论坛名称,似乎没有进行任何验证?

参考文档说:“save方法通知持久化上下文应保存实例或更新如果验证失败,则save方法返回null 和实例如果成功的话,没有保存,实例本身也是如此。“因此,当您在域类对象上调用save methos时,应调用validate方法。

你能发一个例子吗?