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 に答える