diff --git a/lib/mongo_mapper/plugins/associations/many_association.rb b/lib/mongo_mapper/plugins/associations/many_association.rb index 756dfa09a..31847e247 100644 --- a/lib/mongo_mapper/plugins/associations/many_association.rb +++ b/lib/mongo_mapper/plugins/associations/many_association.rb @@ -44,7 +44,7 @@ def #{name}=(value) association = self options = self.options - model.after_destroy do + model.before_destroy do if !association.embeddable? case options[:dependent] when :destroy diff --git a/lib/mongo_mapper/plugins/associations/one_association.rb b/lib/mongo_mapper/plugins/associations/one_association.rb index 9d3b37db1..00042e7d1 100644 --- a/lib/mongo_mapper/plugins/associations/one_association.rb +++ b/lib/mongo_mapper/plugins/associations/one_association.rb @@ -24,7 +24,7 @@ def setup(model) association = self options = self.options - model.after_destroy do + model.before_destroy do if !association.embeddable? proxy = self.get_proxy(association)