[英]Rails Remove Certain routes
我有一个rails应用程序,我有一些自定义路线。 我有一个名为Reports的数据库。 在我的routes.rb中我match '/new' => 'reports#new'
但问题是/ new去了正确的地方,但/ reports / new仍然有效。 有没有办法“停用”标准/报告/新,以便只有/新的工作?
当然,有。 您可以使用only
选项(例如):
resources :reports, :only => [:create, :edit, :update]
它仅为指定的操作定义路由(运行rake routes
以查看所有路由)(因此它不会删除路由,它只是不生成它们)
编辑:另外,当然,还有except
选项(也参见@Andy Gaskell的答案) - 除了给定的操作之外,它会生成所有路径,请参阅文档 。
如果你只在禁用一个动作兴趣except
可能比更合适only
。 它以类似的方式工作。
... :except => :new
http://guides.rubyonrails.org/routing.html#restricting-the-routes-created
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.