为什么Rails 4缓存所有范围?

时间:2014-02-04 09:50:42

标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-4

Rails 4中是否有更改,因为以下内容未按预期工作:

    def self.top_experts(timeframe = 1.week.ago, limit = 5)
      Answer.where('created_at between ? and ?', timeframe, Time.now)
            .group(:user_id)
            .order('sum(score) DESC')
            .limit(limit)
            .includes(:user)
            .collect{|x| x.user}
    end

由于某种原因,它不是每周更新(即使手动检查确实显示返回的列表应该不同)。

该查询旨在返回过去7天内评分最高的专家。

1 个答案:

答案 0 :(得分:2)

问题是,答案有一个default_scope,它搞砸了这个查询,所以正在Answer.unscoped修复它。

耶稣!这似乎也影响了许多其他查询。我想使用default_scope是一个很大的禁忌。