使用数组进行简单路由

时间:2012-12-19 14:26:25

标签: ruby-on-rails rails-routing

因此,如果我想要一个编辑链接,我可以执行以下任一操作:

link_to 'Edit', edit_user_task_path(@user, @task)
link_to 'Edit', [:edit, @user, @task]

如果我想删除一个,我必须这样做:

link_to 'Delete', [@user, @task], method: :delete

是否可以让铁道理解以下内容?

link_to 'Delete', [:delete, @user, @task]

好像它试图转到“delete_user_task_path”,是否有更短的删除形式,就像有编辑一样?

1 个答案:

答案 0 :(得分:2)

您必须了解的是,link_to方法的数组参数不会触及请求方法(据我所知)。

因此,你的建议实际上会对/ user /:id / delete之类的内容做一个GET请求。

你可以通过类似

的方式实现这一目标
resources :user do
  get :delete, on: :member
end

但那不是非常RESTful,我不推荐它。