如何访问app / assets / *文件中的控制器变量

时间:2011-06-28 13:10:38

标签: ruby-on-rails

我使用Rails 3.1。

在我的app/controllers/locations_controller.rb中,我声明了一个@location变量

@location = Location.find(params[:id])

我有一个文件/app/assets/javascripts/locations.coffee.erb,我想使用@location变量

myLatlng: new google.maps.LatLng(<%=@location.latitude %>, <%=@location.longitude %>)

它没有开箱即用,是否有任何解决方案可以实现这一目标?

1 个答案:

答案 0 :(得分:6)

对Sprockets提供的资产(或系统上的任何资产)的请求由完全独立的请求提供,因此它无法访问控制器中设置的实例变量。

我要做的是将JS放在由控制器视图呈现的部分地方。这样就可以访问这些变量。