Module: FriendlyId::ActiveRecordAdapter::Finders::Multiple Abstract

Includes:
Finders::Base
Included in:
SimpleModel::MultipleFinder, SluggedModel::MultipleFinder
Defined in:
lib/friendly_id/active_record_adapter/finders.rb

Overview

This module is abstract.

Wraps finds for multiple records using an array of friendly_ids.

Instance Attribute Summary collapse

Attributes included from Finders::Base

#ids, #model_class, #options, #scope

Instance Method Summary collapse

Methods included from Finders::Base

#find, friendly?, unfriendly?

Instance Attribute Details

#friendly_idsObject (readonly)

Returns the value of attribute friendly_ids.



90
91
92
# File 'lib/friendly_id/active_record_adapter/finders.rb', line 90

def friendly_ids
  @friendly_ids
end

#resultsObject (readonly)

Returns the value of attribute results.



90
91
92
# File 'lib/friendly_id/active_record_adapter/finders.rb', line 90

def results
  @results
end

#unfriendly_idsObject (readonly)

Returns the value of attribute unfriendly_ids.



90
91
92
# File 'lib/friendly_id/active_record_adapter/finders.rb', line 90

def unfriendly_ids
  @unfriendly_ids
end

Instance Method Details

#initialize(ids, model_class, options = {}) ⇒ Object



92
93
94
95
96
# File 'lib/friendly_id/active_record_adapter/finders.rb', line 92

def initialize(ids, model_class, options={})
  @friendly_ids, @unfriendly_ids = ids.partition {|id| FriendlyId::Finders::Base.friendly?(id) }
  @unfriendly_ids = @unfriendly_ids.map {|id| id.class.respond_to?(:friendly_id_config) ? id.id : id}
  super
end