module FindDuplicates
Constants
- VERSION
Public Instance Methods
duplicate?(*args)
click to toggle source
# File lib/find_duplicates.rb, line 7 def duplicate?(*args) set_fields(args) duplicates_with_self(@fields).count > 1 end
duplicates(*args)
click to toggle source
# File lib/find_duplicates.rb, line 12 def duplicates(*args) set_fields(args) duplicates_with_self(@fields).where('id <> ?', id) end
duplicates_with_self(*args)
click to toggle source
# File lib/find_duplicates.rb, line 17 def duplicates_with_self(*args) set_fields(args) self.class.where(self.attributes.slice(*@fields)) end
Private Instance Methods
set_fields(args)
click to toggle source
# File lib/find_duplicates.rb, line 45 def set_fields(args) @fields = args.is_a?(Array) ? args : [args] @fields = @fields.flatten.map &:to_s end