diff --git a/lib/active_admin_import/dsl.rb b/lib/active_admin_import/dsl.rb index 405caeb..013c79a 100644 --- a/lib/active_admin_import/dsl.rb +++ b/lib/active_admin_import/dsl.rb @@ -90,7 +90,8 @@ def active_admin_import(options = {}, &block) @importer = Importer.new( options[:resource_class], @active_admin_import_model, - options + options, + current_user: current_user ) begin result = @importer.import diff --git a/lib/active_admin_import/importer.rb b/lib/active_admin_import/importer.rb index 7c99b78..cbfece8 100644 --- a/lib/active_admin_import/importer.rb +++ b/lib/active_admin_import/importer.rb @@ -2,7 +2,7 @@ require 'csv' module ActiveAdminImport class Importer - attr_reader :resource, :options, :result, :model + attr_reader :resource, :options, :result, :model, :current_user attr_accessor :csv_lines, :headers OPTIONS = [ @@ -21,10 +21,11 @@ class Importer :csv_options ].freeze - def initialize(resource, model, options) + def initialize(resource, model, options, current_user: nil) @resource = resource @model = model @headers = model.respond_to?(:csv_headers) ? model.csv_headers : [] + @current_user = current_user assign_options(options) end