Thanks to Obie Fernandez for a great offline hint: Stub out cache-money's #index method to do nothing. This provides a place for the #index statements in the models to go, and stops the error mentioned above.
Here is my full cache_money.rb lib:
if RAILS_ENV != 'development'
require 'cache_money'
config = YAML.load(IO.read(File.join(RAILS_ROOT, "config", "memcached.yml")))[RAILS_ENV]
$memcache = MemCache.new(config)
$memcache.servers = config['servers']
$local = Cash::Local.new($memcache)
$lock = Cash::Lock.new($memcache)
$cache = Cash::Transactional.new($local, $lock)
class ActiveRecord::Base
is_cached :repository => $cache
end
else
# If we're in development mode, we don't want to
# deal with cacheing oddities, so let's overrite
# cache-money's #index method to do nothing...
class ActiveRecord::Base
def self.index(*args)
end
end
end