实例变量,.new和missing_method

时间:2014-12-31 17:27:16

标签: ruby-on-rails

我在这里遇到一些表格有问题。根视图是webapp#home,底部有一个表单,用于添加新的表/表名。问题是我一直在收到以下错误。

  

TablesController中的NoMethodError#为

创建未定义的方法`table'      

              def create
@table = Table.new(table_params)
if @table.save
  redirect_to '/'     else
      render('new')

跟踪表明“@ table.save”存在missing_method。我猜这个表单以某种方式产生了一个零值,但我不知道为什么会这样= =。在此先感谢,祝2015年快乐!

控制器(Webapp)

def home
    @tables = Table.all
    @table = Table.new
  end

用于表单的代码:

<div class="new-table-form"><%= form_for @table do |f| %><p>Table name: <%= f.text_field :table_name %>&nbsp<%= f.submit %><% end %></p></div>

控制器(表格)

def create
    @table = Table.new(table_params)
    if @table.save
      redirect_to '/'
    else
        render('new')
    end

1 个答案:

答案 0 :(得分:2)

在您需要的创建操作中:

@table = Table.create(table_params) 

不是

@table = Table.new(table_params)