Ruby on rails Rails:具有操作\控制器\路径的restful资源路由

Ruby on rails Rails:具有操作\控制器\路径的restful资源路由,ruby-on-rails,ruby,ruby-on-rails-3,rest,restful-url,Ruby On Rails,Ruby,Ruby On Rails 3,Rest,Restful Url,我在控制器中放置了一个随机化def,并希望通过restful路径访问它。应通过以下方式进入路线: <%= link_to "Randomize", random_reader_path %> 在我的路线中.rb 不过,路由将是random\u readers\u path。(我使用了美味的Ruby 1.9散列语法;如果您使用的是悲剧1.8,则必须编写get'random',:on=>:collection)遗憾的是,即使将您的确切代码添加到我的路由中,我仍然有未定义的局部变量或方法

我在控制器中放置了一个随机化def,并希望通过restful路径访问它。应通过以下方式进入路线:

<%= link_to "Randomize", random_reader_path %>
在我的路线中.rb


不过,路由将是
random\u readers\u path

(我使用了美味的Ruby 1.9散列语法;如果您使用的是悲剧1.8,则必须编写
get'random',:on=>:collection
)遗憾的是,即使将您的确切代码添加到我的路由中,我仍然有未定义的局部变量或方法“random\u readers\u path”。(修改后的参考资料:reader,没有添加新的;))感谢您的链接通过添加参考资料:readers do collection do get'random'end我得到了工作的路径,但是当我单击链接时,我得到了未初始化的常量readers ControllerOh,oops。在
resources
调用中使用复数名称是一种传统,我甚至不知道您使用的是
reader
。有什么原因吗?我认为,它将被称为
random\u reader\u index
,正因为如此(没有办法使
reader
更加单数);您可以在命令行上运行
rake routes
,以查看所有命名的路由。
resources :reader
resources :reader do
  get 'random', on: :collection
end