1
我有一個視圖爲特定的分區生成地圖(可在@district中使用)。我的地圖繪製代碼是每個頁面都可以使用的coffeescript,但它需要將數據作爲一組json文件(district1.json,district2.json等)提供。我得到這個工作的第一種方法是在我的視圖中加載這個變量,使它成爲全局可用的。將javascript數據從視圖傳遞到coffeescript函數
# in my view <script type="text/javascript"> var d_data = <%= render file: "#{Rails.root}/data/district_data/#{@district}.json" %> </script>
然後我用下面的CoffeeScript接受這個全局變量:
$(document).ready -> if $("#users-district-display") myLatLng = new google.maps.LatLng(d_data.centroid.lat,d_data.centroid.lon)
這非常適用於這個頁面,但我現在沒有定義d_data所有頁面拋出錯誤。另外,我在mysite.com/district_data中提供了這些json文件,並且正在考慮使用.get從ajax中引入數據(並讓視圖快速加載),但我仍然需要在那裏使用@district參數。
我知道我可以將js渲染爲一個部分,並且要這樣做,除非我能找到一種方法來製作此coffeescript。
任何想法讚賞。
問候,
添
優秀的,謝謝 – bonhoffer