在我的應用程序controller.rb我所做的:如何使application_controller.rb中的函數在視圖中可見?
def show_footer?
@show_footer = true
end
然後在我看來,我得到一個錯誤說show_footer?沒有定義。
注意,這個視圖在另一個控制器中,然後繼承application_controller。
在我的應用程序controller.rb我所做的:如何使application_controller.rb中的函數在視圖中可見?
def show_footer?
@show_footer = true
end
然後在我看來,我得到一個錯誤說show_footer?沒有定義。
注意,這個視圖在另一個控制器中,然後繼承application_controller。
將它放入application_helper.rb
。
此外,您可能的意思是讓@show_footer == true
而不是=
。
控制器方法不在視圖範圍內;只有幫手方法。您也可以通過以下操作添加控制器方法作爲輔助:
class ApplicationController < ActionController::Base
helper_method :show_footer?
def show_footer?
# Your method implementation.
end
end
現在你就可以參考show_footer?
在都您的控制器和你的意見。
以及我認爲我的意思是@show_footer = true,然後在其他控制器中,我想讓@show_footer爲false,是否合理? – Blankman
通常,在末尾帶有問號的方法返回true或false,並且不用於設置值。例如,Array.empty?不會使數組爲空,它只是讓你知道它是否爲空。 –