Class: Serega::SeregaPlugins::ActiverecordPreloads::ActiverecordArray

Inherits:
Object
  • Object
show all
Defined in:
lib/serega/plugins/activerecord_preloads/lib/preloader.rb

Overview

Preloader adapter for Array of ActiveRecord objects

Class Method Summary collapse

Class Method Details

.fit?(object) ⇒ Boolean

Checks object is an array of ActiveRecord::Base objects

Parameters:

  • object (Object)

    object

Returns:

  • (Boolean)

    whether object is an array with ActiveRecord objects (and all objects have same class)



127
128
129
130
131
# File 'lib/serega/plugins/activerecord_preloads/lib/preloader.rb', line 127

def fit?(object)
  object.is_a?(Array) &&
    ActiverecordObject.fit?(object.first) &&
    same_kind?(object)
end

.preload(records, preloads) ⇒ Array<ActiveRecord::Base>

Preloads associations to array with ActiveRecord::Base objects

Parameters:

  • records (Array<ActiveRecord::Base>)

    ActiveRecord records

Returns:

  • (Array<ActiveRecord::Base>)

    provided records with preloaded associations



139
140
141
142
# File 'lib/serega/plugins/activerecord_preloads/lib/preloader.rb', line 139

def preload(records, preloads)
  Loader.call(records, preloads)
  records
end