Ruby on rails Rails 3.2.4 SQL查询正在缓存查找结果(:all)

Ruby on rails Rails 3.2.4 SQL查询正在缓存查找结果(:all),ruby-on-rails,caching,activerecord,scope,sqlite3-ruby,Ruby On Rails,Caching,Activerecord,Scope,Sqlite3 Ruby,我不能完全确定这个系统是否在缓存数据,但它具有缓存的一些特性 基本上,我是在摆弄rails 3.2.4,系统开始不显示一些结果。我认为这是我在代码模型中设置的默认范围,但即使如此,这也应该显示所有结果,而不是十分之九。但是,我总是会丢失我创建的新记录以及在该记录之后创建的任何其他记录。我检查我的sqlite3数据库,查看数据是否放在那里,并检查所有连接信息,同时确保缓存已关闭。但是,如果我更改了任何模型文件或控制器文件,然后将其保存,则可以显示数据。甚至都不会更改代码,只是触摸命令就可以了。我认

我不能完全确定这个系统是否在缓存数据,但它具有缓存的一些特性

基本上,我是在摆弄rails 3.2.4,系统开始不显示一些结果。我认为这是我在代码模型中设置的默认范围,但即使如此,这也应该显示所有结果,而不是十分之九。但是,我总是会丢失我创建的新记录以及在该记录之后创建的任何其他记录。我检查我的sqlite3数据库,查看数据是否放在那里,并检查所有连接信息,同时确保缓存已关闭。但是,如果我更改了任何模型文件或控制器文件,然后将其保存,则可以显示数据。甚至都不会更改代码,只是触摸命令就可以了。我认为这与范围有关,但我不能完全肯定。我找到的一个解决方案就是回到Rails 3.2.2。做这件事很困难。但我还是不喜欢那种感觉,就像我没弄明白就屈服了一样

development.rb

  # Show full error reports and disable caching
  config.consider_all_requests_local       = true
  config.action_controller.perform_caching = false 
house.rb

class House < ActiveRecord::Base
  attr_accessible :name

  default_scope :order => 'created_at DESC', :limit => 50
  validates_presence_of :name
  has_many :roomies
end
houses_controller.rb

class HousesController < ApplicationController
  def index
    @houses = House.all
  end

  def new
    @house = House.new
  end

  def show
    @house = House.find(params[:id])
  end

  def create
    @house = House.new(params[:house])

    if @house.save
      flash[:success] = "Your house has been created and is ready to have people added to it."
      redirect_to houses_path
    else
      flash[:error] = "Your house could not be added dew to a error!"
      render :action => :new
    end
  end
end
class HousesController:新建
结束
结束
结束
houses/index.html.erb

<%= debug @houses %>


正如您所看到的,没有什么是超级疯狂的。

Rails 3.2.4对无意中缓存对作用域的调用进行了回归。改用rails 3.2.5,其中包括

<%= debug @houses %>