2011-08-02 4 views
0

私は2つのモデルを持つベンダーともう1つはベンダーですhas_many:purchase_requestsとpurchase_requestは持っていますpurchase_request belongs_to:ベンダーまだ私が破壊するとフィールドを削除しませんこのベンダーはどこにでもないオブジェクトを返すので、アプリケーションをクラッシュさせます。どうすればこの問題を解決できますか?他のテーブルに値を残す方法を破壊するレール

答えて

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