控制器中的NoMethodError #new(Forms)

时间:2015-07-01 07:30:47

标签: ruby-on-rails ruby ruby-on-rails-4

我一直在尝试使用实例变量@next在页面上创建表单,但它似乎不起作用。当我删除包含表单的部分时,页面打开,清楚地描述了在routes.rb中正确提到的路径。为了清楚起见,我在控制器文件中添加了以下方法

def new
@next=Self.new
end

创建表单的部分。

<%= form_for(@next) do |a| %>
<%= a.text_field_tag :name %>
<%= a.text_field_tag :prof %>
<%= a.text_field_tag :pic, :placeholder => 'Enter address' %>

我正在使用Rails 4.0.2

的routes.rb

get '/worms' => 'worms#index'
get '/worms/new' => 'worms#new'
post '/worms' => 'worms#create'
get '/worms/:id' => 'worms#show'

请帮忙。

1 个答案:

答案 0 :(得分:0)

您的表单应如下所示......

自我意味着什么?,你应该在这里写下模型的名称。

如果你需要完整的CRUD操作,那么写下以下的路线......

resources :your-model-name-in-plural

<%= form_for @next do |a| %>
<%= a.text_field :name %>
<%= a.text_field :prof %>
<%= a.text_field :pic, :placeholder => 'Enter address' %>