Rails Как получить широту и долготу из строкового адреса и поместить его на карту Google? - PullRequest
4 голосов
/ 03 февраля 2011

Вот история пользователя:

Пользователь вводит адрес: Париж, Франция. Затем я хотел бы отобразить центр карты Google в Париже с одним подвижным маркером. Затем пользователь указывает маркером на его точное местоположение и нажимает кнопку Сохранить. Строка адреса и координаты карты сохраняются в базе данных.

После некоторого поиска я знаю, что могу отобразить карту Google с различными камнями: например, картограф. Мой вопрос: как получить координаты или как передать адрес картографу, чтобы он центрировал карту в Париже?

Ответы [ 3 ]

11 голосов
/ 03 февраля 2011

Я согласен, geokit довольно полезен ... вы можете делать такие вещи, как:

require 'geokit'
include GeoKit::Geocoders

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

Где location это строковое местоположение (например, адрес).Это работает очень хорошо.

Вы также можете изменить геокод, который извлекает строковый адрес из пары координат широта / долгота.Довольно элегантный.

11 голосов
/ 02 сентября 2011

Еще одна опция геокодера для Ruby - это геокодер: https://github.com/alexreisner/geocoder

  location = Geocoder.search( ... )
  location[0].latitude
  location[0].longitude
3 голосов
/ 03 февраля 2011

Я предлагаю камень и плагин geokit . Он делает именно то, что вы ищете и многое другое.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...