2014-06-24 37 views
1

我正在使用mongodb在後端的grails應用程序。我有兩個領域類:cascade:'all-delete-orphan'是如何工作的?

class User { 
    String login 
    String password 
    static hasMany = [ 
     addWebsites: Website 
    ] 
    static mapping = { addWebsites cascade:'all-delete-orphan' } 
} 

和其他領域類爲:

class Website{ 
    String website 
    User user 
    static belongsTo = [user: User] 
    static constraints = { 
     website(url:true, unique: ['user']) 
    } 
} 

我試圖直接從MongoDB中刪除用戶和預期realted網站被刪除爲好,但事實並非如此。我想知道如果我直接從MongoDB數據庫中刪除一個用戶,它是否也應該刪除相關的網站,或者只有當我們通過grails應用刪除用戶時,這個級聯刪除纔有效?

+1

這隻能在Grails中通過你的Domain類使用。 –

+0

所以我想。謝謝。 –

回答

1

級聯,因爲你只有在Grails和GORM通過你的域類工作。它沒有實現任何數據庫級觸發器或約束。

+0

謝謝您的信息:) –

+0

不用擔心。樂意效勞! –