Ruby Geocoder: запрос к базе данных против поиска

Я использую гем Ruby Geocoder и у меня простой вопрос.

Если я получаю координаты широты и долготы на клиенте через javascript + Google Maps, а затем сохраняю их в своей БД, как после этого работают такие методы, как .near() и .nearbys()? Это строго запросы postgres или выполняется удаленный поиск?

Я хочу избежать ограничения запросов API Карт Google, поэтому я делаю это так. По сути, я никогда не хочу, чтобы мой бэкэнд вызывал API, я просто хочу, чтобы клиент отправлял адрес + соответствующие извлеченные координаты и использовал этот гем для локальных запросов только к базе данных.

Это в основном то, как можно использовать этот драгоценный камень?


person John Trichereau    schedule 15.01.2016    source источник


Ответы (2)


Посмотрите на источник, они должны делать только вызовы базы данных. Насколько я мог видеть, вы можете делать удаленные вызовы только через Geocoder::Query.

https://github.com/alexreisner/geocoder/blob/master/lib/geocoder/stores/active_record.rb#L43 https://github.com/alexreisner/geocoder/blob/master/lib/geocoder/stores/active_record.rb#L119

person ssuljic    schedule 15.01.2016

Такие запросы (рядом и рядом) обычно включаются в базу данных. Например, MongoDB включает их. Вы должны посмотреть в документации вашей базы данных.

Для этого вам не нужен геокодер. Геокодер используется для взаимодействия с API, такими как карты Google, или для выполнения некоторых общих задач, не включенных в базу данных.

person Carlos Rojas    schedule 15.01.2016