ruby-on-rails-3 – Rails 3路由 – :删除方法on:collection

我想创建一条允许删除所有共享的路由. RESTful的方式是使用动词DELETE.如何创建指向的路由:
DELETE /shares

我在路线上尝试过:

resources :shares do
  delete :on => :collection
end

但是,这导致了一个错误,rails不能将其转换为符号.

现在我有

resources :shares do
  delete 'delete_all',:on => :collection
end

编辑:我在控制器操作名称中输错,后一种方式有效,但是生成的URL / share / delete_all不是非常RESTful的.

如何删除_delete_all_部分?

解决方法

What am I missing?

match’shares’,:to => ‘shares#delete_all’,:via => :删除

更多信息:http://www.engineyard.com/blog/2010/the-lowdown-on-routes-in-rails-3/

<主观意见>这通常是一个坏主意和代码/设计的气味.通过RESTful界面删除所有记录的需要应该是一个受保护(已认证的)操作的背后,和/或该操作应该以某种方式限定给用户.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...