Module: ActiveRecordUpsert::ActiveRecord::PersistenceExtensions::ClassMethods

Defined in:
lib/active_record_upsert/active_record/persistence.rb

Instance Method Summary collapse

Instance Method Details

#upsert(attributes, &block) ⇒ Object



31
32
33
34
35
36
37
# File 'lib/active_record_upsert/active_record/persistence.rb', line 31

def upsert(attributes, &block)
  if attributes.is_a?(Array)
    attributes.collect { |hash| upsert(hash, &block) }
  else
    new(attributes, &block).upsert(attributes.keys)
  end
end

#upsert_keys(*keys) ⇒ Object



38
39
40
41
42
# File 'lib/active_record_upsert/active_record/persistence.rb', line 38

def upsert_keys(*keys)
  return @_upsert_keys if keys.empty?
  keys = keys.first if keys.size == 1 # support single string/symbol, multiple string/symbols, and array
  @_upsert_keys = Array(keys).map(&:to_s)
end