试图让 gmaps4rails 在 rails 3 项目中工作。我根据演示进行了所有设置,但我的视图仅在地图应位于的灰色背景上显示地图控件。在 chrome 和 safari 中尝试过。有什么想法吗?
在模型中:
acts_as_gmappable :process_geocoding => false
def gmaps4rails_address
"#{address}, #{city}, #{state} #{zip}"
end
在控制器中:
@venues = Venue.limit(5)
@venue_map_data = @venues.to_gmaps4rails
在视图中:
<%= gmaps4rails(@venue_map_data) %>
在 application.html.erb 布局中:
<!DOCTYPE html>
<html>
<head>
<title>MapTest</title>
<%= stylesheet_link_tag :all %>
<%= javascript_include_tag :defaults %>
<%= csrf_meta_tag %>
<%= yield :head %>
</head>
<body>
<%= yield %>
<%= yield :scripts %>
</body>
</html>
Javascript的东西:
<script src="/javascripts/gmaps4rails.js" type="text/javascript"></script>
<script type="text/javascript" src='http://google-maps-utility-library-v3.googlecode.com/svn/tags/markerclusterer/1.0/src/markerclusterer_compiled.js'></script>
<script type="text/javascript" charset="utf-8">
function gmaps4rails_init() {
Gmaps4Rails.map_options.auto_adjust = true;
Gmaps4Rails.initialize();
Gmaps4Rails.markers = [{"longitude": "37.742956", "latitude": "-122.421695"},
{"longitude": "37.742668", "latitude": "-122.421735"},
{"longitude": "37.742578", "latitude": "-122.42178"},
{"longitude": "37.742862", "latitude": "-122.421575"},
{"longitude": "37.743123", "latitude": "-122.421485"}];
Gmaps4Rails.create_markers();
if(typeof gmaps4rails_callback == 'function') { gmaps4rails_callback(); }
}
function gmaps4rails_loadScript() {
var script = document.createElement("script");
script.type = "text/javascript";
script.src = "http://maps.google.com/maps/api/js?sensor=false&libraries=geometry&callback=gmaps4rails_init";
document.body.appendChild(script);
}
window.onload = gmaps4rails_loadScript;
</script>
在@venues 收集的场地数据:名称、地址、城市、州、邮编、纬度、经度
Altena 餐厅,3346 Mission St, San Francisco, CA, 94110, -122.421695, 37.742956
LA Morena Latinoamericana, 3391 Mission St, San Francisco, CA , 94110, -122.421735, 37.742668
Costa Del Sol II, 3385 Mission St, San Francisco, CA, 94110, -122.42178, 37.742578
El Amigo Bar, 3355 Mission St, San Francisco, CA, 94110, -122.421575, 37.742862
三百俱乐部, 3300 Mission St, San Francisco, CA, 94110, -122.421485, 37.743123