2
我並不確定此係統是否緩存數據,但它具有一些緩存特性。Rails 3.2.4 SQL查詢緩存結果查找(:所有)
基本上我搞亂了rails 3.2.4,系統開始不顯示一些結果。我認爲這對於我放入代碼模型的默認範圍是露水的,但即使如此,它也應該顯示所有結果,而不是9箇中的10個。但是,我總是會缺少我創建的新記錄以及我創建的任何其他記錄那個紀錄。我檢查了我的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
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 < 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
個
房子/ index.html.erb
<%= debug @houses %>
正如你可以看到什麼超級瘋狂。
甜蜜感謝您的答案這真的有幫助 – Brandt