Ho un modello in rotaia con una_a_molti rapporti. Quando cancello il padre, vorrei eliminare tutti i childrens. Come dovrei farlo? Voglio eliminare tutti gli ordini e le sue voci quando elimino un utenteCome posso effettuare una cancellazione a cascata in una relazione one_to_many in Rails ActiveRecord?
I miei modelli sono:
class User < ActiveRecord::Base
has_many :orders, :foreign_key => "id_user"
end
class Order < ActiveRecord::Base
has_many :order_items, :foreign_key => "id_pedido"
belongs_to :user, :foreign_key => "id_usuer"
end
class OrderItem < ActiveRecord::Base
belongs_to :order, :foreign_key => "id_pedido"
end
Hai entrambi ragione @jdl e @cite. Quello che stavo facendo male era che stavo chiamando il metodo delete oltre al metodo destroy. Ora tutto funziona bene –
Corretto al 100% .. Grazie .. –