2013-05-15 47 views
2
class First { 
    String text 
    Second second 

    static constraints = { 
    } 
} 

class Second { 
    String name 

    static constraints = { 
    } 
} 

當我刪除第二類對象,我得到了這樣的錯誤:Grails的多對一的關係缺失

Cannot delete or update a parent row: a foreign key constraint fails. 

我想刪除裏面第一頁第二頁的唯一實例。

+0

http://grails.org/doc/latest/guide/GORM.html#cascades –

+0

我希望第一個對象必須活着,但是當第二個對象首先被刪除 – Visme

回答

0

你必須removeSecondFirst(又名FK約束)的協會,然後將能夠刪除Second

first.second = null 
second.delete() 

參考removeFrom更多細節時,使用了一種一對多&多對多的關係。

+0

時,第二個的域必須爲空或爲空。 second = null – Visme

+0

從來沒有嘗試過,使用API​​免除了我的問題。 – dmahapatro

+0

first.second = null second.delete(flush:true)。我們不能使用removeFrom。因爲第二個裏面第一類是單個對象。不是集合。 – Visme