The Location type encodes geographical coordinates as a GeoHash. The data for this type must respond to the `lat` and `lng` methods; you can use Sunspot::Util::Coordinates as a wrapper if your source data does not follow this API.
Location fields are most usefully searched using the Sunspot::DSL::RestrictionWithType#near method; see that method for more information on geographical search.
Sunspot.setup(Post) do location :coordinates do Sunspot::Util::Coordinates.new(coordinates[0], coordinates[1]) end end
# File lib/sunspot/type.rb, line 348 def indexed_name(name) "#{name}_s" end
# File lib/sunspot/type.rb, line 352 def to_indexed(value) GeoHash.encode(value.lat.to_f, value.lng.to_f, 12) end