在rails控制器中未定义的方法'do'。

时间:2016-01-03 20:40:49

标签: ruby-on-rails

我在一个简单的rails应用程序中编写edit方法时遇到问题。我在undefined method 'do'方法中一直收到错误update

我实际上有两个问题。首先,我不确定错误是什么,或者如何修复它。我的第二个问题是我之前遇到过这样的错误,但我总是在努力解决它们。在解决这些错误方面有什么有用的建议吗?

以下是我的controller和我的show页面。我认为不需要任何其他东西,但如果需要,它会带来它。

%h1= @item.title
%h3= @item.description

= link_to "Home", root_path
= link_to "Edit", edit_item_path(@item)
= link_to "Delete", item_path(@item), method: :delete, data: {confirm:     "Are you sure?"}

我的控制器(我浓缩了这一部分)

class ItemsController < ApplicationController
before_action :find_item, only: [:show, :edit, :update, :destroy]

 def edit
 end

 def update
  if @item.do(items_params)
    redirect_to @item
  else
    render "Edit"
  end
 end

end

1 个答案:

答案 0 :(得分:1)

do不是ActiveRecord方法。看起来你想要@item.update。为避免将来出现此类问题,请阅读guidesdocumentation