在Rails 3.1中,如何将AR查询的结果缓存到缓存中?

时间:2011-11-28 22:24:11

标签: ruby-on-rails caching activerecord

对于这样的AR查询:

@users = User.find(some_conditions_here)

然后@users是一个AR数组,我想缓存它。

如果我这样做,在一个控制器调用中,

Rails.cache.write('foo',@users)

它没有抱怨或错误,我甚至可以在/ tmp / cache下看到'foo',其大小非零,但后续的控制器调用

Rails.cache.read('foo')

返回零。当我从Rails控制台执行写入和读取操作时,它按预期工作。通过导致此问题的控制器执行此操作是什么?

以前在Rails 2中工作过......我错过了什么?

1 个答案:

答案 0 :(得分:2)

检查config.action_controller.perform_caching是否设置为true

引用Rails caching guide

  

默认情况下,对于开发和测试禁用缓存,并为生产启用