Module: ActsAsSavable::ClassMethods
- Defined in:
- lib/acts-as-savable.rb
Instance Method Summary collapse
Instance Method Details
#saves_to(table_name, *attrs) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/acts-as-savable.rb', line 7 def saves_to(table_name, *attrs) class_eval do def save(*args) _acts_as_savable_object.save(*args) end def save!(*args) _acts_as_savable_object.save!(*args) end private define_method :_acts_as_savable_object do klass = Class.new(ActiveRecord::Base) { self.table_name = table_name } instance = id ? klass.find(id) : klass.new attrs.each {|attr| instance.send("#{attr}=", send(attr))} instance end end end |