In an ActiveRecord::Base
model, I can reset the state of the model to what it was when I got it from the database with reload
, as long as the attri
Rework Jean-Do's answer slightly. It doesn't break default instance_variables and relations.
after_initialize do
@default_instance_variables = instance_variables
end
def reload(options = nil)
super
self.instance_variables.each do |ivar|
if ivar == :'@default_instance_variables' ||
@default_instance_variables.include?(ivar)
next
end
remove_instance_variable(ivar)
end
self
end