我已经让整个地图正确显示,没有任何问题。但是,地图总是在 的坐标处加载0,0
。我知道我也正确地传递了经度和纬度。
这是该gmaps4rails
方法接收的打印 json:
[{"lat":40.7142,"lng":74.0064}]
下面也是各个生产领域中使用的代码...
看法
<%= @maps %>
<%= gmaps4rails(@maps) %>
模型
acts_as_gmappable :process_geocoding => false, :lat => :lat, :lng => :lng
def lat
40.7142
end
def lng
74.0064
end
控制器
@maps = Event.find(params[:id]).to_gmaps4rails
正如您将在我的模型中看到的那样,我已决定明确传递纬度和经度。我确实使用列设置了我的数据库latitude
,longitude
但是,我目前正在处理测试数据,不能指望得到可靠的结果。在那之前,我将使用纽约市的坐标。
这是输出的Javascript:
Gmaps.map = new Gmaps4RailsGoogle();
Gmaps.load_map = function() {
Gmaps.map.map_options.auto_adjust = true;
Gmaps.map.initialize();
Gmaps.map.markers = [{"lat":40.7142,"lng":74.0064}];
Gmaps.map.markers_conf.do_clustering = true;
Gmaps.map.create_markers();
Gmaps.map.adjustMapToBounds();
Gmaps.map.callback();
};
Gmaps.oldOnload = window.onload;
window.onload = function() { Gmaps.triggerOldOnload(); Gmaps.loadMaps(); };
我确实得到了一个错误Uncaught TypeError: Object #<Gmaps4RailsGoogle> has no method create_markers
。
此外,这是问题的图片(请注意地图上方的打印 json,如上面的视图代码中所做的那样):