Adrian Serafin
Adrian Serafin

Reputation: 7725

Rails How to get latitude and longitude from string address and put it on google map?

Here's user story:

User enters address: Paris, France. Then I would like to display google map center on Paris with one movable marker. Then user point with marker to its exact location and clicks save. Address string and map coordinates are saved to database.

After some search I know I can display google map with variuos gems: cartographer for example. My question is how to get coordinates or how to pass address to cartographer so it centers map in Paris?

Upvotes: 5

Views: 12250

Answers (3)

vfilby
vfilby

Reputation: 10008

Another geocoder option for Ruby is Geocoder: https://github.com/alexreisner/geocoder

  location = Geocoder.search( ... )
  location[0].latitude
  location[0].longitude

Upvotes: 11

J.R.
J.R.

Reputation: 6069

I agree, geokit is pretty useful...you can do things like:

require 'geokit'
include GeoKit::Geocoders

coords = MultiGeocoder.geocode(location)
puts coords.lat
puts coords.lng

Where location is a string location (like an address). It works pretty well.

You can ALSO reverse geocode, which pulls a string address out of a lat/lng coordinate pair. Pretty spiffy.

Upvotes: 11

sethvargo
sethvargo

Reputation: 26997

I suggest the gem and plugin geokit. It does exactly what you are looking for and more.

Upvotes: 3

Related Questions