Class: RademadeAdmin::Linker

Inherits:
Object
  • Object
show all
Defined in:
app/services/linker.rb

Instance Method Summary collapse

Constructor Details

#initialize(model_info, item, relation) ⇒ Linker

Returns a new instance of Linker.



5
6
7
8
9
# File 'app/services/linker.rb', line 5

def initialize(model_info, item, relation)
  @model_info = model_info
  @item = item
  @related_data_item = model_info.data_items.data_item(relation)
end

Instance Method Details



11
12
13
# File 'app/services/linker.rb', line 11

def link(id)
  process_link { |old_data| old_data << @related_data_item.relation.related_entities(id) }
end


15
16
17
18
19
# File 'app/services/linker.rb', line 15

def unlink(id)
  process_link { |old_data|
    old_data.delete_if { |data_item| data_item.id.to_s == id.to_s }
  }
end