Module: ActiveRecord::ImportWithCallbacks

Extended by:
ActiveSupport::Concern
Defined in:
lib/active_record/import_with_callbacks.rb,
lib/active_record/import_with_callbacks/version.rb

Constant Summary collapse

Result =
Class.new(ActiveRecord::Import::Result)
DEFAULT_BATCH_SIZE =
100
DEFAULT_RECURSIVE =
true
VERSION =
'0.3.7'.freeze

Instance Method Summary collapse

Instance Method Details

#import_with_callbacks(*args) ⇒ ActiveRecord::Import::Result

Insert multiple records in batches with callbacks

Parameters:

  • records (Array<ActiveRecord::Base>)
  • options (Hash)

Returns:

  • (ActiveRecord::Import::Result)


24
25
26
27
28
29
30
# File 'lib/active_record/import_with_callbacks.rb', line 24

def import_with_callbacks(*args)
  options = args.extract_options!
  records = args.pop
  options[:batch_size] = DEFAULT_BATCH_SIZE unless options.key?(:batch_size)
  options[:recursive] = DEFAULT_RECURSIVE unless options.key?(:recursive)
  import_in_transaction(records, options)
end