def save(*args)
      # Go through changed attributes and call save_attribute for
      # those only
      changes.each do |key, values|
        save_attribute(key, values[1], *args)
      end

      # Go through and only save the loaded relationships, since
      # only those would be modified.
      self.class.relationships.each do |name, options|
        save_relationship(name, *args)
      end

      # No longer a new record
      @new_record = false

      true
    end
def save(*args)
      # Go through changed attributes and call save_attribute for
      # those only
      changes.each do |key, values|
        save_attribute(key, values[1], *args)
      end

      # Go through and only save the loaded relationships, since
      # only those would be modified.
      self.class.relationships.each do |name, options|
        save_relationship(name, *args)
      end

      # No longer a new record
      @new_record = false

      true
    end
Saves the model attributes and relationships.

 The method can be passed any arbitrary arguments, which are
 implementation specific (see {VM#save}, which does this).