Rails 3.2.4 SQL查询是在find(:all)上缓存结果

我不确定这个系统是否缓存数据,但它有一些缓存的特性。

基本上我搞乱了rails 3.2.4,系统开始没有显示一些结果。 我认为这是露水到我放入代码模型的默认范围,但即使如此,这应该显示所有结果而不是10个中的9个。但是我总是会丢失我创建的新记录以及我创建的任何其他记录那个记录。 我检查我的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  'created_at DESC', :limit => 50 validates_presence_of :name has_many :roomies end 

schema.rb

 ActiveRecord::Schema.define(:version => 20120601204050) do create_table "houses", :force => true do |t| t.string "name" t.datetime "created_at", :null => false t.datetime "updated_at", :null => false end end 

houses_controller.rb

 class HousesController  :new end end end 

房屋/ index.html.erb

  

你可以看到没什么超级疯狂的。

Rails 3.2.4围绕对作用域的调用进行了无意的缓存。 请尝试使用rails 3.2.5,其中包括此提交