Спасибо Оби Фернандесу за отличный оффлайн-совет: заглушите метод #index кеш-денег, чтобы ничего не делать. Это обеспечивает место для операторов #index в моделях и останавливает ошибку, упомянутую выше.
Вот моя полная библиотека cache_money.rb:
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