Ruby on rails 未初始化的常量ActiveResource::ResourceNotFound

Ruby on rails 未初始化的常量ActiveResource::ResourceNotFound,ruby-on-rails,Ruby On Rails,我将Rails3.2.3与ActiveResource一起使用。 我在制作中遇到了一个问题: ActiveResource::ResourceNotFound: Failed. Response code = 404. Response message = Not Found. 所以我试着像对待ActiveRecord::RecordNotFound一样对待它: class ApplicationController < ActionController::Base protect_

我将Rails3.2.3与ActiveResource一起使用。 我在制作中遇到了一个问题:

ActiveResource::ResourceNotFound: Failed. Response code = 404. Response message = Not Found.
所以我试着像对待
ActiveRecord::RecordNotFound
一样对待它:

class ApplicationController < ActionController::Base
  protect_from_forgery

  rescue_from ActiveRecord::RecordNotFound do |e|
    render_404
  end

  rescue_from ActiveResource::ResourceNotFound do |e|
    render_404
  end

  def render_404
    respond_to do |type|
      type.html { render template: 'shared/404_not_found', layout: 'application', status: '404 Not Found' }
      type.all  { render nothing: true, status: '404 Not Found' }
    end
  end
end
我真的不明白。我尝试了一个
(ActiveResource::ResourceNotFound)
,但它又回到了以前的行为

你知道如何处理这个问题吗

谢谢

编辑:目前我使用了以下代码,但我对它并不满意

rescue_from Exception do |e|
  e.is_a?(ActiveResource::ResourceNotFound) ? render_404 : raise
end

嘿,忽略我的评论我想出了一个解决办法:

rescue_from "ActiveResource::ResourceNotFound" do |e|
  render_404
end

将异常放在引号中,这样它就不会在启动时尝试对其进行评估(我假设ActiveResource尚未加载)

您使用的rails版本是什么?这个类在Rails 3中不存在。是的,它存在:我也遇到了这个问题。同时使用ActiveResource::ResourceNotFound中的
rescue\u并获得相同的错误。您是否提出了解决方案,还是仍在使用“例外黑客全球救援”?:\
rescue_from "ActiveResource::ResourceNotFound" do |e|
  render_404
end