0

我的域名:

Company {
   String name
}

Contact {
   String name
   Company compa

   static constraints = {
      compa (nullable: true)
   }
}

如果公司有来自联系人的外键约束,我无法删除它。我希望删除工作,并且在删除公司时将 compa 属性设置为 null。

是否有这样做的约束?有没有比我尝试的更好的方法?

4

1 回答 1

3

试试这个,也许还有其他选择。我没有测试过这段代码,只是给你一个想法。

在 Company.groovy 中:

 def beforeDelete() {
      Contact.withNewSession {
          Contact.findAllByCompany(this).each {
            it.company = null
            it.save()
          }
      }
 }
于 2013-01-06T17:00:45.727 回答