优化 Rails 路由定义
Optimizing Rails routing definition
我们的 Rails 3.2.22
应用程序中定义了大约 650 条路线。其中大约 20 个占我们请求的 90% 以上。这 20 个都属于可选范围:(/:api_version)
。定义这些路线的最佳位置在哪里。
是在定义树的开头还是结尾?换句话说,他们应该按受欢迎程度升序还是降序来定义?
来自rails guides:
Rails routes are matched in the order they are specified, so if you have a resources :photos above a get 'photos/poll' the show action's route for the resources line will be matched before the get line.
所以将最常用的路由添加到顶部是最有效的。
您还应该考虑将路由拆分为命名空间和单独的文件。
http://blog.arkency.com/2015/02/how-to-split-routes-dot-rb-into-smaller-parts/
上有一篇不错的文章
我们的 Rails 3.2.22
应用程序中定义了大约 650 条路线。其中大约 20 个占我们请求的 90% 以上。这 20 个都属于可选范围:(/:api_version)
。定义这些路线的最佳位置在哪里。
是在定义树的开头还是结尾?换句话说,他们应该按受欢迎程度升序还是降序来定义?
来自rails guides:
Rails routes are matched in the order they are specified, so if you have a resources :photos above a get 'photos/poll' the show action's route for the resources line will be matched before the get line.
所以将最常用的路由添加到顶部是最有效的。
您还应该考虑将路由拆分为命名空间和单独的文件。
http://blog.arkency.com/2015/02/how-to-split-routes-dot-rb-into-smaller-parts/
上有一篇不错的文章