我成功地使用 GMaps4Rails 来渲染来自 Rails/Mongoid/Spacial 模型的标记,而且我通常发现 GMaps4Rails 非常酷。
然而,有一件事一直在我的脑海里挥之不去(尽管我让它工作正常):在所有示例和答案中,我都看到了通过 访问的 Google 地图对象Gmaps4Rails.map
,例如
google.maps.event.addListener(Gmaps4Rails.map, 'click', function(object){
alert(object.latLng);
});
(取自使用 Google-Maps-for-Rails 添加标记)
但是,我从来没有让这个工作。如果我将Gmaps4Rails.map
对象记录到控制台,它是未定义的。该Gmaps.map
对象是 type Gmaps4RailsGoogle
,因此要访问实际的 Google 地图,我需要编写例如
google.maps.event.addListener(Gmaps.map.map, 'click', ...)
我正在通过实例化地图
= gmaps(:map_options => {"detect_location" => true, "center_on_user" => true,
"zoom" => 12})
任何提示将不胜感激,因为我有一种唠叨的感觉,我做错了什么。
更新:我应该读过https://github.com/apneadiving/Google-Maps-for-Rails/wiki/From-0.xx-to-1.xx