我正在使用伟大的宝石gmaps4rails在我的Ruby on Rails网站上放置Google Map。我在wiki上关注this page并尝试通过将gmaps
字段设置为false来控制何时应更新计算的纬度和经度。我似乎无法让它发挥作用。
在我的用户模型中,我有这个:
class User < ActiveRecord::Base
acts_as_gmappable
attr_accessible :latitude, :longitude, :address, :gmaps
def gmaps4rails_address
address
end
我确定我在这里错过了一些简单的东西。我正在使用SQLite数据库浏览器将address
字段直接更改为新的,将latitude
和longitude
设置为0,我尝试将gmaps
设置为false,f,0,null(不确定SQLite中的false是什么)...然后通过刷新页面再次加载地图。它始终将标记显示为0,0 ..
我认为我所要做的就是定义一个名为boolean
的{{1}},当它设置为false时,加载地图时,它应该通过对地址进行地理编码来重新计算纬度/经度。我错过了什么?
谢谢!
答案 0 :(得分:4)
请看the test here,第72行。
地图加载时不会刷新坐标,这是acts_as_gmappable
模型验证过程的一部分。
model_instance.update_attributes({ :sec_address => "new address",
:gmaps => false })