2
我有一個模型,人,具有下列關聯關係:如何訪問ActiveRecord :: AutosaveAssociation.marked_for_destruction?從父模型中
has_many :distributions
accepts_nested_attributes_for :distributions, :allow_destroy => true
validate :distributions_must_total_100
目前的自定義驗證時,它不應該失敗 - 當一些驗證已被標記爲破壞 - 因爲在Person和它的分佈被保存之前,它們仍然顯示在屬性「分佈」(在內存中,而不管數據庫中的內容)。
我想在驗證程序中使用ActiveRecord::AutosaveAssociation.marked_for_destruction?
來忽略即將銷燬的分發。
如何達到該方法?不太確定Distribution(你的普通Rails模型)與這個類的關係。
這是一個可怕的不潔淨的黑客?它只感覺有點骯髒,而且它是解決問題的最精確的解決方案。
我確實通過在調試器中的ActiveRecord源代碼步驟,以確認記錄實際被標記用於破壞(即,不是一個Javascript或表單生成器錯誤)。