このシステムがデータをキャッシュしているかどうかはよくわかりませんが、キャッシュの特徴がいくつかあります。
基本的に、私は Rails 3.2.4 をいじっていて、システムが結果の一部を表示しなくなりました。これは私がコードモデルに入れたデフォルトのスコープによるものだと思いますが、それでもこれは 10 分の 9 ではなくすべての結果を表示するはずです。その記録。sqlite3 データベースをチェックして、データがそこに配置されているかどうかを確認し、すべての接続情報をチェックして、キャッシュがオフになっていることを確認します。ただし、モデル ファイルまたはコントローラー ファイルを変更して保存すると、データが表示されます。touchコマンドだけでうまくいくコードを変更することすらありません。スコープと関係があると思いますが、完全にはわかりません。私が見つけた解決策の 1 つは、Rails 3.2.2 に戻ることです。うまくいくようです。
開発.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
house_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 %>
あなたが見ることができるように、超クレイジーなものは何もありません。