2013-12-20 3 views
0

В настоящее время я использую html5 geolocation api, чтобы получить текущее местоположение пользователя (lat lng), геокодировать его с помощью geocoder gem и перенести данные на сообщение, написанное пользователем. Эти сообщения видны только в определенном диапазоне сохраненного местоположения. Теперь мой вопрос. Возможно ли получить местоположение пользователя, посмотреть сообщения, доступные в этом месте, и выкинуть правильный контент непосредственно на загрузку страницы? Может быть, сочетание javascript ajax и rails? Я понятия не имею. Моя единственная идея - использовать javascript для хранения данных местоположения в поле поиска, и пользователь должен отправить это поле, а затем получить правильный контент. Но я хочу, чтобы это было выполнено в фоновом режиме при загрузке страницы. Есть идеи? Вы бы мне очень помогли, ребята :)Использовать API-интерфейс HTML5 Geolocation для хранения current_user_position в rails

+0

Насколько конкретным является местоположение? Если он отображает контент по странам, то GeoIP - это путь. –

+0

Эй. Спасибо за ответ. Но это не соответствует моему вопросу ^^ Получение позиции пользователя не представляет проблемы. Все дело в фоновом процессе загрузки страницы. Я не знаю, как извлечь переменные Javascript, чтобы использовать их в моем коде erb, чтобы показать правильный контент на странице – user3079933

+0

, ваш вопрос слишком многословный/неоднозначный, чтобы мы могли вам помочь, возможно, предоставить нам какой-то код для просмотра @ и как далеко вы получаете эти координаты. –

ответ

0

Я использую обратный вызов, чтобы отправить позицию пользователя обратно в Rails через ajax. Rails сохраняет позицию (при необходимости), возвращает результаты на основе позиции и отвечает на результаты.

  • Первоначальный запрос -> пустая страница
  • клиент разрешает позиции сообщений
  • обратного вызова координаты на сервер с помощью AJAX
  • ???
  • сервер отвечает с содержанием
  • обновление страницы

ERb визуализируется задолго до того, на стороне клиента Javascript даже работает. Данные, полученные от клиента, такие как геопозиция, должны быть отправлены обратно на сервер.

+0

это действительно звучит как метод, который я хочу попробовать. Не могли бы вы прислать мне пример кода? было бы потрясающе :) – user3079933

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