Module: DuplicateIt::ClassMethods
- Defined in:
- lib/duplicate_it.rb
Instance Method Summary collapse
-
#ignorable_associations ⇒ Object
Getter method for ignorable_associations.
-
#ignorable_attributes ⇒ Object
Getter method for ignorable_attributes.
-
#ignore_associations_while_duplicating(*args) ⇒ Object
Setter method for ignorable_associations.
-
#ignore_attributes_while_duplicating(*args) ⇒ Object
Setter method for ignorable_attributes.
Instance Method Details
#ignorable_associations ⇒ Object
Getter method for ignorable_associations
53 54 55 56 |
# File 'lib/duplicate_it.rb', line 53 def ignorable_associations @@ignorable_associations ||= [] @@ignorable_associations.collect { |x| x.to_sym } end |
#ignorable_attributes ⇒ Object
Getter method for ignorable_attributes
33 34 35 36 |
# File 'lib/duplicate_it.rb', line 33 def ignorable_attributes @@ignorable_attributes ||= ["id", "type", "created_at", "updated_at"] @@ignorable_attributes end |
#ignore_associations_while_duplicating(*args) ⇒ Object
Setter method for ignorable_associations
39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/duplicate_it.rb', line 39 def ignore_associations_while_duplicating(*args) @@ignorable_associations = [] args.each do |argument| if self.reflect_on_all_associations(:has_many).collect { |has_many_reflection| has_many_reflection.name }.include?(argument.to_sym) @@ignorable_associations << argument.to_s else Rails.logger.debug "DuplicateIt: Invalid association '#{argument}' in use." end end @@ignorable_associations = @@ignorable_associations.uniq end |
#ignore_attributes_while_duplicating(*args) ⇒ Object
Setter method for ignorable_attributes
20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/duplicate_it.rb', line 20 def ignore_attributes_while_duplicating(*args) @@ignorable_attributes = [] args.each do |argument| if self.attribute_names.include?(argument.to_s) @@ignorable_attributes << argument.to_s else Rails.logger.debug "DuplicateIt: Invalid attribute '#{argument}' in use." end end @@ignorable_attributes = @@ignorable_attributes.uniq end |