2015-03-13 40 views
0

你好我目前的工作alexreisner地理编码,我需要调整,使用户不要有太多增加他们的地址,经度和纬度的形式,但是,当他们提交表单,我们自动填充,他们不必添加他们的地址的经度和纬度轨地理编码alexreisner自动添加用户位置

是否有可能自动做到这一点?它会安全吗?以及如何做到这一点?

这是我目前拥有的数据库,并正在与

create_table "quests", force: :cascade do |t| 
    t.float "latitude" 
    t.float "longitude" 
    t.string "address" 
    t.string "name" 
    t.datetime "created_at", null: false 
    t.datetime "updated_at", null: false 
end 

任何帮助将不胜感激

回答

0

你会发现在documentation答案:

你只需要添加此在你的模型中

geocoded_by :address    # can also be an IP address 
after_validation :geocode   # auto-fetch coordinates 

希望它有帮助!

0

如果你使用一个Web应用Rails应用程序,比你需要从用户的浏览器的坐标。你可以用javascript来做到这一点。

navigator.geolocation.getCurrentPosition(setPositionByBrowserCoordinates) if navigator.geolocation 

回调(这里setPositionByBrowserCoordinates),您可以用得到的坐标例如隐藏字段集内。它们将在提交时发送到您的服务器,并且您可以保存它们。

这一切都为用户自动工作。用户需要做的唯一事情就是允许您访问该职位。

Mozilla文档:https://developer.mozilla.org/en-US/docs/Web/API/Geolocation/getCurrentPosition