【发布时间】:2015-09-20 09:02:20
【问题描述】:
在我的 Rails 3 应用程序中,我通过以下方式获取 path_info:
Rails.application.routes.recognize_path(url, { :method => request.request_method }) rescue {}
如果爬虫点击“http://localhost:3000/admin_”之类的 URL,上面的代码会引发以下错误:
LoadError: Expected /Users/user/myRailsApp/app/controllers/admin_controller.rb to define Admin_Controller
from /Users/user/.rvm/gems/ree-1.8.7-2012.02/gems/activesupport-3.0.20/lib/active_support/dependencies.rb:492:in `load_missing_constant'
我有两个问题:
- 为什么
rescue不起作用?如果我把它改成rescue LoadError => e,异常会被优雅地处理。 - 除了挽救此类异常之外,还有其他选择吗?
【问题讨论】:
标签: ruby-on-rails ruby ruby-on-rails-3 ruby-1.8.7