我有一个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