用户的未定义方法`model_name':类

时间:2015-11-27 21:14:05

标签: ruby-on-rails ruby methods undefined simple-form

我在rails上的ruby上遇到了simple_form gem的问题。我正在使用一个实例变量但是当我在我的部分声明它时,它出现了“未定义的方法`model_name'for WelcomePageController:Class”我不知道发生了什么。我试图解决它,但它对我来说是不可能的

这是我的控制器页面

class WelcomePageController < ApplicationController

 def index
 end

 def new
    @neword = WelcomePageController.new
 end

 def create
 @neword = WelcomePageController.new(words_params)  
 end

 private

 def words_params
  params.require(:words_input).permit(:word, :definition, :example)
 end

end

这是我的部分表格

<%= simple_form_for @neword do |f| %>

<%= f. input :word, label: "insert a word"%>

<%= f. text :definition, label: "give a definition" %>

<%= f.text :example, label: "give an exmaple" %>

<%= f. button :submit %>

<% end %>

这是我的新观点

<h1>hi, again</h1>

<%= render 'form' %>

希望你能帮助我:)

1 个答案:

答案 0 :(得分:1)

看起来@neword应该是ActiveRecord的一个实例(例如Model),但是你提供了一个WelcomePageController.new(一个Controller)的实例。你有任何数据库表吗?那么你应该有一个具有相同名称的Model类(例如&#34; Word&#34;),你应该实例化而不是Controller

@neword = Word.create