我使用紅寶石2.3.1和軌道3.2.1。我需要在應用程序控制器中初始化一個名爲has_sub_menu = false
的變量。如何跨各種控制器使用相同的變量 - 軌道上的紅寶石
在我的應用程序中,我使用了30多個控制器,並且只有兩個控制器包含子菜單,所以我需要將has_sub_menu = true
分配給這些控制器以在佈局文件中進行驗證。
這是我application.rb
has_sub_menu = false
some_controller01.rb
has_sub_menu = true
some_controller02.rb
has_sub_menu = true
我試着像這樣layout.rb
,
if controller.has_sub_menu == true
show_menu_items
end
show_menu_items
將在兩個控制器是可用的,目前我不能夠訪問佈局文件的has_sub_menu
值
我知道在C#中,我可以變量聲明爲靜態和使用對象訪問它的任何文件。
就像明智的我怎麼能聲明application
控制器中的變量,並在另外兩個控制器中爲該變量分配不同的值,並且我需要在layout.rb文件中訪問該值以進行子菜單驗證。
不應該是走在application_controller的方法,而不是application.rb中? –