2011-11-28 110 views
0

對於AR這樣的查詢:在Rails 3.1中,如何將AR查詢的結果緩存到緩存?

@users = User.find(some_conditions_here) 

然後@users是AR數組,我想緩存此。

如果我這樣做,在一個控制器呼叫,

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

它不會抱怨或報錯了,我甚至可以看到在/ tmp /緩存中的「富」與非零大小,但後續控制器致電

Rails.cache.read('foo') 

返回零。當我從Rails控制檯執行寫入和讀取時,它按預期工作。通過一個導致這個問題的控制器來做什麼?

這用於在Rails 2之前工作...我錯過了什麼?

回答

2

檢查config.action_controller.perform_caching設置爲true

引述Rails caching guide

緩存默認情況下用於開發和測試禁用,併爲生產

+0

啓用經過已經費雯麗。現在我已經開始緩存用戶模型的ID。緩存AR對象並且根本不需要在數據庫中就好了... – bachposer