Ruby on rails Rails:缓存类忽略mixin

Ruby on rails Rails:缓存类忽略mixin,ruby-on-rails,caching,Ruby On Rails,Caching,我对ActiveRecord::基类进行了如下扩展: lib/activerecord_ext.rb: class ActiveRecord::Base named_scope( :recent, :conditions => ['created_at > ?', (Time.new - 3.day)], :order => 'created_at DESC', :limit => 5 ) end 在config/envi

我对ActiveRecord::基类进行了如下扩展:

lib/activerecord_ext.rb:

class ActiveRecord::Base
  named_scope( 
    :recent, 
    :conditions => ['created_at > ?', (Time.new - 3.day)], 
    :order => 'created_at DESC', 
    :limit => 5
  )
end
在config/environment.rb中:

require "activerecord_ext"
在启用类缓存之前,这一切都可以正常工作。当我设定

config.cache_classes = true
我得到这个错误:

>> Person.recent
NoMethodError: You have a nil object when you didn't expect it!
The error occurred while evaluating nil.call
 from /Library/Ruby/Gems/1.8/gems/activerecord-2.3.3/lib/active_record/named_scope.rb:102:in `recent'
 from (irb):1

我假设我在包含扩展时做错了什么。非常感谢您的帮助。

config.cache\u classes=true
行之前或之后,
是否需要“activerecord\u ext”
?在任何情况下,请尝试将require“activerecord\u ext”放在初始值设定项中