aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoshua Peek <josh@joshpeek.com>2010-01-16 16:14:35 -0600
committerJoshua Peek <josh@joshpeek.com>2010-01-16 16:15:32 -0600
commit603d4fbacd69d95987d3f7fed91631e481f5a1cf (patch)
tree22fa709f1fea0b146083706cace34e37b3f51408
parentdba196cb7f8d34b93f6872e4a43737bb52019065 (diff)
downloadrails-603d4fbacd69d95987d3f7fed91631e481f5a1cf.tar.gz
rails-603d4fbacd69d95987d3f7fed91631e481f5a1cf.tar.bz2
rails-603d4fbacd69d95987d3f7fed91631e481f5a1cf.zip
Build middleware stack and reload routes after app initializers run
[#3709 state:resolved]
-rw-r--r--actionpack/lib/action_controller/railtie.rb1
-rw-r--r--railties/lib/rails/application.rb14
2 files changed, 12 insertions, 3 deletions
diff --git a/actionpack/lib/action_controller/railtie.rb b/actionpack/lib/action_controller/railtie.rb
index 741101a210..f070b13dbf 100644
--- a/actionpack/lib/action_controller/railtie.rb
+++ b/actionpack/lib/action_controller/railtie.rb
@@ -23,7 +23,6 @@ module ActionController
initializer "action_controller.initialize_routing" do |app|
app.route_configuration_files << app.config.routes_configuration_file
app.route_configuration_files << app.config.builtin_routes_configuration_file
- app.reload_routes!
end
initializer "action_controller.initialize_framework_caches" do
diff --git a/railties/lib/rails/application.rb b/railties/lib/rails/application.rb
index c95316a4da..4d05f8115c 100644
--- a/railties/lib/rails/application.rb
+++ b/railties/lib/rails/application.rb
@@ -99,9 +99,15 @@ module Rails
end
end
+ def app
+ @app ||= begin
+ reload_routes!
+ middleware.build(routes)
+ end
+ end
+
def call(env)
- @app ||= middleware.build(routes)
- @app.call(env)
+ app.call(env)
end
initializer :load_application_initializers do
@@ -110,6 +116,10 @@ module Rails
end
end
+ initializer :build_middleware_stack do
+ app
+ end
+
# Fires the user-supplied after_initialize block (Configuration#after_initialize)
initializer :after_initialize do
config.after_initialize_blocks.each do |block|