在grails中防止重复输入以便巧妙地保存

时间:2014-05-12 10:05:38

标签: grails grails-2.0

我有一个名为thana的域名,我把所有的名字都放在了。但我不想保存任何重复的名称。可能有很多方法可以做到这一点,但是我会更加聪明,我不知道。任何人都可以帮我这个。任何示例或源代码都可以完美地完成工作。提前感谢您观看此问题。

1 个答案:

答案 0 :(得分:2)

这听起来像是unique constraint的完美用例。

class MyDomain {
  String name
  OtherDomain related

  static constraints = {
    name unique: ['related'] // each instance must have a unique name per related
  }
}

修改

根据评论中的问题进行了更新。以上将确保每个相关的名称是唯一的。因此,例如,如果MyDomain A的相关实例ID为1且名称为" Test"没有具有相同相关实例的MyDomain的实例可以具有" Test"的名称。但是,具有rleated实例id为2的MyDomain B可以具有" Test"因为唯一的是相关的"在上面的例子中。