如何在所有视图中看到变量 - rails

use*_*447 8 ruby ruby-on-rails

所以我有很多控制器和很多观点.

我希望每次加载每个视图时都会评估我的变量@random_quote.

我在应用程序控制器中尝试了几件事(我认为它应该在这里?)但它们都没有用.

那么如何连接这两个:@random_quote.body (in view)

@random_quote = Quote.find(:random) (在控制器右边?)

通过我的所有申请看到了什么?

谢谢您的回答!

Ron*_*man 14

我怀疑你确实需要它在所有视图中都可访问.但是您可以在ApplicationController中@random_quote = Quote.find(:random)使用a调用的方法before_filter.然后它随处可见.

像这样:

before_filter :get_random_quote
def get_random_quote
    @random_quote = Quote.find(:random)
end
Run Code Online (Sandbox Code Playgroud)