Module: OfflineLookup::ActiveRecord

Defined in:
lib/offline_lookup.rb

Instance Method Summary collapse

Instance Method Details

#use_offline_lookup(field = :name, key: :id, identity_methods: true, lookup_methods: true) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/offline_lookup.rb', line 7

def use_offline_lookup(field = :name, key: :id, identity_methods: true, lookup_methods: true)
  class_attribute :offline_lookup_values, :offline_lookup_options
  self.offline_lookup_options = {
    field: field.to_s,
    key: key.to_s,
    identity_methods: !!identity_methods,
    lookup_methods: !!lookup_methods
  }.freeze
  self.offline_lookup_values = self.all.pluck(key, field).to_h.freeze

  include OfflineLookup::Base
end