Class: Nazrin::DataAccessor::ActiveRecord

Inherits:
Nazrin::DataAccessor show all
Defined in:
lib/nazrin/data_accessor/active_record.rb

Instance Attribute Summary

Attributes inherited from Nazrin::DataAccessor

#model, #options

Instance Method Summary collapse

Methods inherited from Nazrin::DataAccessor

accessor_for, accessors, for, #initialize, register, register_accessor, registered_accessor_for, #results

Constructor Details

This class inherits a constructor from Nazrin::DataAccessor

Instance Method Details

#data_from_response(res) ⇒ Object



18
19
20
# File 'lib/nazrin/data_accessor/active_record.rb', line 18

def data_from_response(res)
  res.data.hits.hit.map(&:id)
end

#load_all(ids) ⇒ Object

load from activerecord



5
6
7
8
9
10
11
12
13
14
15
16
# File 'lib/nazrin/data_accessor/active_record.rb', line 5

def load_all(ids)
  records_table = {}
  options.each do |k, v|
    @model = model.send(k, v)
  end
  model.where(id: ids).each do |record|
    records_table[record.id] = record
  end
  ids.map do |id|
    records_table.select { |k, _| k == id.to_i }[id.to_i]
  end.reject(&:nil?)
end