0

我将模型的实例传递给缓存函数,并希望 Railscache_key用作片段缓存的名称:

<% cache @ask do %>
 code
<% end %> 

但它使用了._id修饰符:

Exist fragment? views/50c919b646b5001be700002f (0.8ms)
Read fragment views/50c919b646b5001be700002f (0.0ms)

(id 看起来像这样,因为我使用的是 mongoDB)。我正在使用 Rails 3.0.5。为什么会这样?

编辑:我正在使用 mongoid 2.0.0

4

1 回答 1

0

Mongoid 2.4.0版本介绍cache_key功能:https ://github.com/mongoid/mongoid/blob/master/lib/mongoid/document.rb#L242:L246

如果您无法升级,则可以在您的模式下执行此操作:

def cache_key
  # insert your cache key logic here
end
于 2013-06-18T11:03:01.727 回答