2014-05-14 39 views
2

通常,如果我們指定:dependent => :destroy:dependent => :delete AR調用每個關聯行的DELETE查詢。如果我們使用ModelName.delete(batch_of_ids) AR,請致電DELETE ... FROM ... WHERE ... IN (batch_of_ids)。沒有定義自己的方法,是否有可能通過單個查詢銷燬關聯?例如像activerecord-import寶石,但用於刪除。通過單個請求刪除ActiveRecord關聯

+1

如果你有三個模型:'A' < - 'B' < - 'C',你想刪除一個'A'的實例? –

+0

如果深度繼承,這個任務是沒用的。在MyClass user3240646

+2

我沒有檢查引擎蓋下發生了什麼,但'依賴:: delete_all'呢? – jvnill

回答

0

您可以使用dependent: :delete_all刪除單個查詢中的所有記錄。

相關問題