module ActiveRecordCloning
Public Class Methods
included(base)
click to toggle source
# File lib/rails_core_extensions/active_record_cloning.rb, line 2 def self.included(base) base.extend(ClassMethods) end
Public Instance Methods
clone_excluding(excludes=[])
click to toggle source
# File lib/rails_core_extensions/active_record_cloning.rb, line 61 def clone_excluding(excludes=[]) method = ActiveRecord::Base.instance_methods(false).include?(:clone) ? :clone : :dup cloned = send(method) excludes ||= [] excludes = [excludes] unless excludes.is_a?(Enumerable) self.class.exclude_attributes(cloned, excludes) cloned end