MongoDB Mongoid::Criteria 不使用缓存

suupic · May 01, 2012 · Last by suupic replied at May 01, 2012 · 3294 hits

favorite 模型中

def self.content
  Rails.cache.fetch("favorite:content/{self.id}", :expires_in => 1.days ) {
    self.content
  }
end




非 Criteria 请求可以用到 cache,比如:

Favorite.limit(5).collect {|f| f.content}




Criteria 请求,则每次都直达数据库,比如:(favorites 是个 Mongoid::Criteria)

favorites = User.first.favorites.desc(:created_at).page 1
favorites.collect {|f| f.content }




这个问题怎么解决?搜了一圈没找到答案

类变量和实例变量搞错了

class Favorite
  def content
    Rails.cache.fetch("favorite:content/#{self.id}", , :expires_in => 1.days ) {
      self[:content]
    }
  end
end

#1 楼 @huacnlee 多谢,搞定

You need to Sign in before reply, if you don't have an account, please Sign up first.