如果这个问题很愚蠢/没有被正确问到,我提前道歉,这是我在 stackoverflow 中的第一篇文章,我在 RoR 是全新的......
我有一个使用gem gmaps4rails v2.0.4
. 该应用程序接收地址(街道、城市和国家/地区),使用地理编码器计算纬度和经度,然后将它们插入我的标记生成器。
每次我刷新我的显示页面时,谷歌地图中的标记都会改变位置......我什至尝试插入实际的纬度和经度([{"lat":49.245253,"lng":-123.0651361}])
而不是“ raw @hash.to_json
”,并且每次刷新时它仍然会在不同的位置呈现标记。
有谁知道如何解决这一问题?
注意:我也尝试在谷歌地图中复制并粘贴该坐标,并且标记的位置非常一致。我的 controller.rb 和 show.html.erb 粘贴在下面。提前致谢!!
控制器.rb
@hash = Gmaps4rails.build_markers(@branches) do |branch, marker|
marker.lat branch.latitude
marker.lng branch.longitude
end
显示.html.erb
<script type="text/javascript">
handler = Gmaps.build('Google');
handler.buildMap({ provider: {}, internal: {id: 'map'}}, function(){
markers = handler.addMarkers(<%=raw @hash.to_json %>);
handler.bounds.extendWith(markers);
handler.fitMapToBounds();
});
</script>