2012-10-31 18 views
5

Uygulamamızda, ActiveRecord imha yöntemini geçersiz kıldık, böylece kayıtlarımız silinmeyecek (böylece kullanıcı geri alınamaz). böylece gibi: AncakTetikleyici bağımlı:: geçersiz kılınmış yok etme yöntemiyle yok et

def destroy 
    self.is_deleted = true 
    self.save 
    freeze 
end 

, bu bağımlı bizim has_many ilişkileri tahrip devre dışı gibi görünüyor. Başka bir deyişle, bir üst nesnede destroy çağrılırsa, has_many'un alt nesnesi yok edilmez (silinmezler, yani, SQL 'DELETE...', veya geçersiz kılınmış destroy-yöntemidir).

Çocuk nesnelerini yok etmeyi nasıl tetiklerim?

Teşekkürler!

cevap

6

Geri arama geri çağırmayı tetiklemeniz gerekir.

def destroy 
    self.is_deleted = true 
    self.save 
    run_callbacks :destroy 
    freeze 
end 
+0

Teşekkürler! Tam olarak eksik olduğum şey bu. :) –