Module: Mongoid::Geo::Models

Defined in:
lib/mongoid/geo/geo_near.rb

Instance Method Summary collapse

Instance Method Details

#to_criteriaObject



41
42
43
44
# File 'lib/mongoid/geo/geo_near.rb', line 41

def to_criteria
  ids = map(&:_id)
  first.klass.where(:_id.in => ids)
end

#to_modelsObject



29
30
31
32
33
34
35
36
37
38
39
# File 'lib/mongoid/geo/geo_near.rb', line 29

def to_models
  distance_hash = Hash[ self.map {|item| [item._id, item.distance] } ]

  ret = to_criteria.to_a.map do |m|
    m.extend(Mongoid::Geo::Distance)
    m.set_distance distance_hash[m._id.to_s]
    m
  end

  ret.sort {|a,b| a.distance <=> b.distance}
end