Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 城市/国家文本字段验证_Ruby On Rails_Ruby_Geolocation_Latitude Longitude - Fatal编程技术网

Ruby on rails 城市/国家文本字段验证

Ruby on rails 城市/国家文本字段验证,ruby-on-rails,ruby,geolocation,latitude-longitude,Ruby On Rails,Ruby,Geolocation,Latitude Longitude,我需要跟踪我申请的lat/lng/城市/国家的用户,并满足以下两个要求: 1) 自动获取用户lat/lng/城市/国家。(这很简单,我可以使用ip,或者如果他们有支持地理定位的浏览器,那就更好了) 2) 允许用户自定义此位置(可能ip地址查找没有提供准确的城市)。该位置是一个自由形式的文本字段(不是下拉列表)。当用户输入新位置时,应根据可用城市/国家/地区对其进行验证。如果它针对其中任何一个进行验证,请选择它,然后检索新位置的latlng。(这就是我遇到的问题) 同样要澄清的是,这是一个使用Mo

我需要跟踪我申请的lat/lng/城市/国家的用户,并满足以下两个要求:

1) 自动获取用户lat/lng/城市/国家。(这很简单,我可以使用ip,或者如果他们有支持地理定位的浏览器,那就更好了)

2) 允许用户自定义此位置(可能ip地址查找没有提供准确的城市)。该位置是一个自由形式的文本字段(不是下拉列表)。当用户输入新位置时,应根据可用城市/国家/地区对其进行验证。如果它针对其中任何一个进行验证,请选择它,然后检索新位置的latlng。(这就是我遇到的问题)


同样要澄清的是,这是一个使用MongoDB的Rails 3应用程序。我正在寻找一个单一的API或数据库,可以让我做(1)和(2)。有人做过类似的事情吗?寻找一些关于其他人是如何做到这一点的想法。

你的问题并不完全清楚你遇到了什么问题。一般来说,我会这样做:

  • 具有存储位置名称和坐标的位置模型
  • 当用户输入一个位置时,发送一个Ajax请求来查找它
  • 如果找到,请在会话中设置位置
  • 如果找不到,则返回一个类似命名位置的列表(以防输入错误),并让用户选择一个或坚持输入
  • 完成输入后,如果需要,请插入新位置并存储User.location\u id
您可以使用Google的来查找未知位置的坐标。

我推荐,它在为几个地理编码API提供前端方面做得非常好。我强烈建议坚持雅虎或谷歌,纯粹是为了数据完整性问题

有一个,它为Activerecord添加了一些很好的助手。目前,主项目与rails 3不兼容,但至少有一个fork已经为rails 3进行了更新