Class: ActiveAdminImporter::Definition

Inherits:
Object
  • Object
show all
Defined in:
lib/active_admin_importer/definition.rb

Instance Method Summary collapse

Constructor Details

#initialize(_name = :records, _controller, &block) ⇒ Definition

Returns a new instance of Definition.



3
4
5
6
7
8
9
10
11
12
13
# File 'lib/active_admin_importer/definition.rb', line 3

def initialize(_name=:records, _controller,  &block)
  @_name = _name
  @_action = "import_#{@_name}"
  @_form_action = "upload_#{@_name}"
  @_view = "admin/csv/upload"
  @_required_headers ||= []
  @_controller = _controller
  @_model = @_controller.resource_class
  @_each_row = lambda{ |params| @_model.create!(params) }
  self.instance_eval(&block) if block_given?
end

Instance Method Details

#[](val) ⇒ Object



15
16
17
# File 'lib/active_admin_importer/definition.rb', line 15

def [](val)
  self.instance_variable_get(:"@_#{val}")
end

#action(val) ⇒ Object



19
20
21
# File 'lib/active_admin_importer/definition.rb', line 19

def action(val)
  @_action = val
end

#after(&block) ⇒ Object



23
24
25
# File 'lib/active_admin_importer/definition.rb', line 23

def after(&block)
  @_after = block
end

#before(&block) ⇒ Object



27
28
29
# File 'lib/active_admin_importer/definition.rb', line 27

def before(&block)
  @_before = block
end

#each_row(&block) ⇒ Object



39
40
41
# File 'lib/active_admin_importer/definition.rb', line 39

def each_row(&block)
  @_each_row = block
end

#form_action(val) ⇒ Object



43
44
45
# File 'lib/active_admin_importer/definition.rb', line 43

def form_action(val)
  @_form_action = val
end

#keyObject



31
32
33
# File 'lib/active_admin_importer/definition.rb', line 31

def key
  "#{self[:controller].name.underscore}/#{self[:name]}"
end

#model(val) ⇒ Object



35
36
37
# File 'lib/active_admin_importer/definition.rb', line 35

def model(val)
  @_model = val
end

#required_headers(*_values) ⇒ Object



47
48
49
# File 'lib/active_admin_importer/definition.rb', line 47

def required_headers(*_values)
  @_required_headers = _values
end

#transform(&block) ⇒ Object



55
56
57
# File 'lib/active_admin_importer/definition.rb', line 55

def transform(&block)
  @_transform = block
end

#transformer(val) ⇒ Object



51
52
53
# File 'lib/active_admin_importer/definition.rb', line 51

def transformer(val)
  @_transformer = val
end

#view(value) ⇒ Object



59
60
61
# File 'lib/active_admin_importer/definition.rb', line 59

def view(value)
  @_view = value
end