2012-12-20 37 views
0

我正在嘗試使用gmaps4rails。當我添加一條記錄時,客戶端表格正在填充緯度和經度。但是,地圖沒有顯示任何內容。Rails gmaps4rails地圖 - gmaps未定義錯誤

從瀏覽器控制檯,我得到的錯誤:一,二號線「Gmaps沒有定義」:

<script type="text/javascript"> 
Gmaps.map = new Gmaps4RailsGoogle(); 
Gmaps.load_map = function() { 

我與咖啡文件,並在我的應用程序,這些線路的JavaScript gmaps4rails文件夾。 JS:

//= require gmaps4rails/gmaps4rails.base 
//= require gmaps4rails/gmaps4rails.bing 
//= require gmaps4rails/gmaps4rails.googlemaps 
//= require gmaps4rails/gmaps4rails.mapquest 
//= require gmaps4rails/gmaps4rails.openlayers 

我的看法代碼:

<ul id="markers_list"> 
    <%= gmaps("markers" => {"data" => @json, "options" => {"list_container" => "markers_list" } }) %> 
    </ul> 

我的模型有:

acts_as_gmappable 

def gmaps4rails_address 
    "#{address1}, #{city}, #{state}, #{zipcode}" 
end 

def gmaps4rails_infowindow 
    "#{client_name}, #{address1}, #{city}, #{state}, #{zipcode}" 
end 

def gmaps4rails_sidebar 
    "<span>#{client_name}</span>" 
end 

任何想法?

謝謝!

更新: 我一直在瀏覽器控制檯。

這是在視圖頁面,在這裏我想顯示谷歌地圖:

<footer> 
<script src="//maps.google.com/maps/api/js?v=3.8&amp;sensor=false&amp;client=&amp;key=&amp;libraries=geometry&amp;language=&amp;hl=&amp;region=" type="text/javascript"></script> 
<script src="http://maps.gstatic.com/cat_js/intl/en_us/mapfiles/api-3/8/12/%7Bmain,geometry%7D.js" type="text/javascript"></script> 

<script type="text/javascript"> 
Gmaps.map = new Gmaps4RailsGoogle(); 
Gmaps.load_map = function() { 
Gmaps.map.initialize(); 
Gmaps.map.markers = [{"description":"Salt Lake County Headquarters, 2001 South State Street, Salt Lake City, UT, 84114","sidebar":"<span>Salt Lake County Headquarters</span>","lat":40.7267176,"lng":-111.8881423}, 
...(more data points right here) 
Gmaps.oldOnload = window.onload; 
window.onload = function() { Gmaps.triggerOldOnload(); Gmaps.loadMaps(); }; 

</footer> 

我敢肯定的是,前2 SCRIPT SRC之後= ,還應該有:

<script src="/javascripts/gmaps4rails/gmaps4rails.base.js?1355589475" type="text/javascript"></script> 
<script src="/javascripts/gmaps4rails/gmaps4rails.googlemaps.js?1355589475" type="text/javascript"></script> 

但是,這些結果進一步下降了頁面。在我看來,這2個腳本在gmaps執行之前沒有加載。所以,我得到的gmaps沒有定義錯誤。

任何想法? 謝謝!

回答

0

終於搞明白了。以下代碼行位於我的佈局頁腳中:

<%= stylesheet_link_tag "application", :media => "all" %> 

將其移至標題並且Gmaps4rails開始工作。

1

那麼,爲什麼你把地圖渲染到markers_list?

<!-- render your map here --> 
<%= gmaps("markers" => {"data" => @json, "options" => {"list_container" => "markers_list" } }) %> 
<!-- and here you render the markers_list --> 
<ul id="markers_list"></ul> 

你舒爾包括<%= yield :scripts %>

相關問題