提交 69b627ef 编写于 作者: E Emilio Tagua

Don't load IdentityMap middleware if not enabled. Simplify middleware.

上级 48edab9b
......@@ -98,8 +98,9 @@ def initialize(app)
end
def call(env)
ActiveRecord::IdentityMap.enabled? ?
ActiveRecord::IdentityMap.use { @app.call(env) } : @app.call(env)
ActiveRecord::IdentityMap.use do
@app.call(env)
end
end
end
end
......
......@@ -22,9 +22,6 @@ class Railtie < Rails::Railtie
config.app_middleware.insert_after "::ActionDispatch::Callbacks",
"ActiveRecord::ConnectionAdapters::ConnectionManagement"
config.app_middleware.insert_after "::ActionDispatch::Callbacks",
"ActiveRecord::IdentityMap::Middleware"
rake_tasks do
load "active_record/railties/databases.rake"
end
......@@ -81,6 +78,11 @@ class Railtie < Rails::Railtie
end
end
initializer "active_record.identity_map" do |app|
config.app_middleware.insert_after "::ActionDispatch::Callbacks",
"ActiveRecord::IdentityMap::Middleware" if ActiveRecord::IdentityMap.enabled?
end
config.after_initialize do
ActiveSupport.on_load(:active_record) do
instantiate_observers
......
......@@ -107,6 +107,11 @@ def app
assert_equal "Rack::Runtime", middleware.fourth
end
test "identity map is inserted" do
boot!
assert_equal "ActiveRecord::IdentityMap::Middleware", middleware[9]
end
test "insert middleware before" do
add_to_config "config.middleware.insert_before ActionDispatch::Static, Rack::Config"
boot!
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册