我試圖建立在我的網站形式,但我得到這個錯誤:on Rails的創建形式紅寶石
undefined method 'model_name' for NilClass:Class
說,錯誤是線#33。
線路33我有<%= form_for @try do |f| -%>
我試圖建立在我的網站形式,但我得到這個錯誤:on Rails的創建形式紅寶石
undefined method 'model_name' for NilClass:Class
說,錯誤是線#33。
線路33我有<%= form_for @try do |f| -%>
您需要將您的形式鏈接到一個特定的模式。在你的控制器中,定義@try的代碼是什麼?無論它似乎沒有指定一個新的或當前的模型實例。
@try
變量必須爲零。它是如何設置的?你確定它會一直包含一個有效的對象嗎?
視圖不孤立存在。您需要讓您的控制器在視圖中設置您可能需要的所有變量。
因此,假設這是一個編輯視圖,你需要在你的控制器edit
操作代碼,像這樣:
def edit
@try = SomeModel.find params[:id]
end
這將設置@try變量,並將其提供給視圖。
如果您使用的是new.html.haml或new.html.erb視圖文件中的代碼
def new
@try = ModelName.new
end