Algo que yo no recibo ...ActiveRecord: la eliminación de registros asociados
tengo esto en mi modelo:
class Model < ActiveRecord::Base
has_many :model_options # a link table for many to many
has_many :options,
:through => :model_options,
:dependent => :destroy,
:foreign_key => 'model_id'
end
y trato de hacer esto:
model = Model.find(id)
model.options.delete # also tried model.options.delete_all
Pero esto no borra los registros del DB. En lugar Tengo que hacer esto:
model.options.each do |option|
option.delete
end
... que no puede ser la mejor manera.
Entonces, ¿cuál es la mejor manera, por favor?
curioso, es la devolución de llamada before_destroy necesario si usted tiene la: dependiente => : destruir la opción en su lugar? –
No. No está comenzando Rails 3. –