Saves the associated record if it’s new or :autosave is enabled.
In addition, it will destroy the association if it was marked for destruction.
# File activerecord/lib/active_record/autosave_association.rb, line 350 def save_belongs_to_association(reflection) if (association = association_instance_get(reflection.name)) && !association.destroyed? autosave = reflection.options[:autosave] if autosave && association.marked_for_destruction? association.destroy elsif autosave != false saved = association.save(:validate => !autosave) if association.new_record? || autosave if association.updated? association_id = association.send(reflection.options[:primary_key] || :id) self[reflection.primary_key_name] = association_id end saved if autosave end end end