2014-01-23 2 views
2

Я пытаюсь использовать Geocoder, чтобы просто возвращать результаты вблизи заданной широты и долготы, моя таблица имеет столбцы широты и долготы, хотя они написаны как «model'_latitude» и «model'_longitude».Использование Geocoder gem только для запроса расстояния

Мне не нужно геокодировать объект, поскольку я не использую адрес, широта и долгота сохраняются через параметры при создании, и я хочу получить результаты, используя метод near.

Возможно ли это с этим камнем? Если нет предложений по чему-то более подходящему?

EDIT:

Для немного больше информации, это то, что я до сих пор. В классе модели:

geocoded_by :latitude => :game_latitude, :longitude => :game_longitude 
after_validation :geocode 

, а затем я пытаюсь найти игры в пределах 50 км с:

Game.near([latitude, longitude], 50, :units => :km) 

и ошибки я получаю это «Неизвестный столбец games.latitude», так что, очевидно, не пытаясь найти game_latitude

ответ

0

geocoded_by предназначено для адреса для lat/lon. Вы хотите reverse_geocoded_by. Нет необходимости в каких-либо крючках вообще, я не думаю.

Просто это в вашей игре модель:

reverse_geocoded_by :game_latitude, :game_longitude 

Смотрите последние строки этого раздела:

https://github.com/alexreisner/geocoder#activerecord

Смежные вопросы