我需要一个变量,它将在所有控制器中可用。例如,我尝试过类似的东西:
class ApplicationController < ActionController::Base
@test = 'test string'
...
end
如果我试图在application.html.erb
中显示 @test 的内容,那么我得到的是空结果。
一种可能性是将字符串存储到session
,但这样我只想使用最新的可能性......
所以我想问你 - 在Rails中存在任何优雅的方式,怎么办?
答案 0 :(得分:1)
您可以使用before_filter
设置变量:
class ApplicationController < ActionController::Base
before_filter :set_test
def set_test
@test = 'test string'
end
end
有了这个,可以在application.html.erb中使用@test
。