如何在Rails中存储使用IP获取的会话地理位置信息的最佳方式是什么?

3
我正在开发一个基于位置的应用程序,并希望在Rails中通过用户的IP地址存储其位置。我目前正在使用geokit,可以通过用户的IP地址获取位置,但我想知道最好的方法是什么,可以在不存储到数据库的情况下存储此信息(因此第一次/未注册的用户也可以受益于位置功能而无需注册/登录)。
最好的例子就是Groupon或LivingSocial应用程序如何“知道”您第一次访问它们的位置。他们通过IP获取您的位置,可能将其存储在会话中。这是最好的方法吗?如果是,使用rails / geokit该怎么做?
如果需要更多信息,请告诉我。谢谢!
1个回答

2

您是否可以将其推送到用户会话中,并在没有注册的情况下引用该会话?您还可以创建一个缓存表,将物理IP与位置关联起来,并参考该表。


我想我可以。但是我对sessions和rails不太熟悉。有什么关于如何做到这一点的最佳方法的提示吗(是否像session[:city] = geo.city这样简单)?此外,对于可能访问应用程序中的任何页面的首次用户,存储此会话的最佳方法是什么? - Slythic
会话在存储简单的文本或数字方面非常出色,但在序列化整个模型方面并不是很好。如果您将地理信息存储在这些格式中,那么就没问题了。例如:session[:loc] = "#{lat},#{long}" - tadman

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接