调用destroy时,不会从DB中删除记录

时间:2013-08-27 13:51:18

标签: ruby-on-rails activerecord

我有一个link_to意味着销毁记录:

<%= link_to 'Delete from DB', {:controller => 'foos', :action => 'destroy', :id => foo.id}, :class => "btn btn-primary btn-mini" %>

控制器中的destroy方法:

  def destroy
    @foo = Foo.find(params[:id])
    @foo.destroy

  respond_to do |format|
    format.html { redirect_to :back }
    format.json { head :no_content }
  end
end

按下按钮不会删除记录,但是如果我打开rails控制台并在现有foo上调用.destroy,它将从数据库中删除。

如果你在这里看到错误,请告诉我。感谢。

1 个答案:

答案 0 :(得分:3)

这可能是因为您需要发送GET请求才能发送DELETE请求,以便呼叫destroy操作。所以,你的链接应该是:

<%= link_to 'Delete from DB', foo, :class => "btn btn-primary btn-mini", :method => 'delete' %>