我有一個List對象,嵌套任務。我創建了一個顯示單個任務的頁面,還創建了一個允許用戶編輯單個任務的頁面。我現在想添加從任務編輯頁面的列表中刪除任務的功能。使用下面的代碼錯誤路由Rails嵌套資源破壞方法
<%= link_to 'Delete this task',@task, confirm: 'Are you sure?', method: :delete %>
產生
undefined task_path method
此代碼是show.html.erb頁面,在這裏我呼籲@task以顯示所有存儲在任務中的數據的,所以我相信這個問題可能是某種路由錯誤,但我似乎無法弄清楚。
相關的控制器方法是
def destroy
@task = Task.find(params[:id])
@task.destroy
respond_to do |format|
format.html { redirect_to list_tasks_path(@task) }
format.json { head :ok }
end
end
我認爲用刪除法我提供的@task也只是通過PARAMS發送到毀滅的方法,但這個錯誤似乎表明這ISN」確切地說它是如何工作的。那麼我怎樣才能正確地銷燬Rails中的嵌套資源?
編輯: 這裏是路線文件嵌套資源:
MyApp::Application.routes.draw do
resources :lists do
resources :tasks
end
get "home/index"
root :to => 'home#index'
end
謝謝您的幫助!
由於這是路由問題,請將您的'routes.rb'添加到問題中。 – Mischa