我试图从生产rails应用程序中
删除“catch all”或“default”路由.我有兴趣在收集其使用日志的同时维护操作,以便我可以用适当的硬编码路由替换它.
所以,鉴于我的config / routes.rb文件中有以下默认路由行.
match '/:controller(/:action(/:id))'
我怎样才能创建或检索每次路由被击中的日志.理想情况下,此日志仅包括此路由实际处理的请求以及参数,并且需要使路由本身正常运行.
您可以这样做的一种
方法是将默认路由更改为:
match ':controller(/:action(/:id))(.:format)',:using_default_route => true
然后将以下函数放入app / controllers / application_controller.rb
before_filter do
if params[:using_default_route]
logger.info("Default route for #{request.path.inspect}. params = #{params.inspect}")
end
end