2011-05-18 39 views
0

當我的索引頁,然後點擊刪除鏈接來破壞後我得到這個錯誤:未知的操作無響應刪除操作。操作:添加,編輯和索引

Unknown action 

No action responded to delete. Actions: add, edit, and index 

編輯下一個鏈接刪除與出了一道難題作品我不明白爲什麼刪除不起作用。這是什麼在我的控制器car_controller.rb

def delete 
    @car = Car.find(params[:id]) 
    flash[:notice] = "Question #{@car.name} deleted!" 
    @car.destroy 
    redirect_to :controller => :car, :action => :index 
    end 

map.connect ':controller/:action/:id' 
    map.connect ':controller/:action/:id.:format' 
    map.root :controller => "main" 
    map.root :controller => "car" 
end 

回答

0

是不是刪除行動實際上銷燬?

如果你看一下這是作爲支架的一部分生成一個控制器,你應該看到的刪除操作映射到...

Rails提供了7個REST風格的經典動作開箱時產生控制器而且每一個都有上述操作方法評價的實際URL +方法...

# DELETE /subject_families/1 
# DELETE /subject_families/1.xml 
def destroy 
    ... 
end 

我希望這有助於...

+0

改變對‘破壞’不有所作爲它仍然對於同樣的錯誤‘刪除’ – 2011-05-18 13:39:56

+0

我是否也沒有必要在delete.html.erb的視圖中出現?或者我錯過了什麼@ jaydel – 2011-05-18 13:42:44

+0

什麼是刪除鏈接的網址?雖然我不知道你的問題,但是,對不起... – jaydel 2011-05-18 13:46:27

0

確保您的請求使用正確的HTTP動詞。 Rails的REST資源默認是在destroy操作中使用HTTP DELETE。您是使用GET(簡單鏈接)還是使用POST而不是DELETE?

我建議您檢查您的路線 - 運行rake routes - 確認Rails期待的是什麼。如果您使用Rails的資源路徑產生,那麼我希望你的視圖模板包含這樣的事情:

<%= form_for @car, :html => { :method => :delete } do |f| %> 
    <%= submit_tag 'Delete Car' %> 
<% end %>