我正在使用Rails Gon
https://github.com/gazay/gon
从控制器轻松插入视图中获取数据
获得一个想法(仅作为示例):
def show
gon.alert = "this is an alert"
end
现在在我的show.haml中:
:javascript
alert(gon.alert)
现在,我始终可以访问在控制器操作中设置的gon值,但是要从应用程序中访问gon值怎么办?咖啡?
在哪里设置gon.current_user = 1我可以在application.coffee内部使用?
最佳答案
如果要设置可从每个控制器操作访问的gon值,从而始终在application.coffee中可用,则可以在before_filter
中设置ApplicationController
。
class ApplicationController < ActionController::Base
protect_from_forgery
before_filter :set_gon_values
private
def set_gon_values
gon.current_user = 1 # or whatever you want to set here
end
end
这将在所有控制器上的每个动作之前运行
set_gon_values
方法。之所以可行,是因为您的所有控制器都继承自ApplicationController
。关于javascript - 如何将gon值传递给application.coffee?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9957681/