【发布时间】:2013-11-27 01:06:23
【问题描述】:
我正在尝试使用this example 之后的 Gmaps4rails gem 来实现标记拖动功能,但我在使用未定义的“Gmaps.map”对象时遇到问题,我无法为要处理的地图添加回调可拖动的标记。
现在地图显示正确,但我卡在拖动部分。
我正在使用“gmaps4rails”、“2.0.3”
我在控制器中创建标记:
@locations = Location.all
@hash = Gmaps4rails.build_markers(@locations) do |location, marker|
marker.lat location.latitude
marker.lng location.longitude
end
在视图中:
= content_for :scripts do
= javascript_include_tag "//maps.google.com/maps/api/js?v=3.13&sensor=false&libraries=geometry"
= javascript_include_tag '//google-maps-utility-library-v3.googlecode.com/svn/tags/markerclustererplus/2.0.14/src/markerclusterer_packed.js'
= javascript_include_tag "/assets/custom_scripts/map_scripts.js"
%div{ :style => 'width: 800px;' }
#map{ :style => 'width: 800px; height: 400px;' }
:javascript
createMap(#{raw @hash.to_json });
在 JS 中:
function createMap(items){
var handler = Gmaps.build('Google');
handler.buildMap({ provider: {}, internal: {id: 'map'}}, function(){
markers = handler.addMarkers(items);
handler.bounds.extendWith(markers);
handler.fitMapToBounds();
});
}
我不确定此文档是否已过时,因为它们仍在使用
<%= gmaps("markers" => {"data" => @json, "options" => { "draggable" => true } } ) %>
我读到 Gmaps4rails v2 上不再使用“gmap”功能
【问题讨论】:
-
我确认您正在混合 v1 和 v2 ode。请阅读自述文件或观看视频
标签: ruby-on-rails google-maps draggable gmaps4rails