2011-08-02 19 views
0

我有一個Rails應用程序,有兩個模型之一是供應商,另一個是purchase_request其中有供應商has_many:purchase_requests和purchase_request有belongs_to:供應商但我打電話時銷燬它不會刪除字段與此供應商在一起,並因此崩潰的應用程序,因爲它返回該供應商使用的零對象。我怎樣才能解決這個問題?Rails破壞方法在其他表中留下值

回答

4

這聽起來像你需要使用:dependent => :destroy選項,供您關聯。

class Vendor < AR::Base 
    has_many :purchase_requests, :dependent => :destroy 
end 
3

試試這個代碼,它應該爲你工作:

has_many :purchase_requests, :dependent => :delete_all 
+0

「刪除」將不會觸發這可能是一個痛苦的任何回調,如果purchase_request也有依賴或before_delete過濾器 – apneadiving

+0

好點,謝謝。 – jschorr