Каков наилучший способ хранения результатов геолокации сеанса с IP-адреса с использованием рельсов?

Я работаю над приложением на основе местоположения, и я хотел бы сохранить местоположение пользователя с его IP-адреса в рельсах. В настоящее время я использую geokit, и я могу получить местоположение через IP-адрес пользователя, но мне интересно, как лучше всего хранить эту информацию без сохранения в базе данных (поэтому впервые/незарегистрированные пользователи могут извлечь выгоду из функции определения местоположения без регистрации/авторизации).

Лучший пример, который я могу привести, — это то, как Groupon или LivingSocial «знают», где вы находитесь, когда впервые посещаете их приложения. Они получают ваше местоположение по IP и, вероятно, сохраняют его в сеансе. Это лучший способ? Если да, то как мне это сделать с помощью rails/geokit?

Дайте мне знать, если вам нужна дополнительная информация. Спасибо!


person Slythic    schedule 09.02.2011    source источник


Ответы (1)


Есть ли причина, по которой вы не можете вставить его в сеанс пользователя и ссылаться на него при отсутствии регистрации? Вы также можете создать таблицу кэширования, которая связывает физические IP-адреса с местоположениями, и также ссылаться на это.

person tadman    schedule 09.02.2011
comment
Я полагаю, что мог. Однако я не слишком знаком с сессиями и рельсами. Любые советы о том, как лучше всего это сделать (это так же просто, как session[:city] = geo.city?). Кроме того, как лучше всего сохранить этот сеанс для первого пользователя, который может посетить любую страницу в приложении? - person Slythic; 09.02.2011
comment
Сеансы действительно хороши для хранения простых битов текста или чисел, но не очень хороши для сериализации целых моделей. Если вы сохраните свою географическую информацию в этих форматах, все будет в порядке. Например: session[:loc] = "#{lat},#{long}" - person tadman; 09.02.2011