diff options
author | Piotr Sarnacki <drogus@gmail.com> | 2010-07-30 07:14:48 +0200 |
---|---|---|
committer | Piotr Sarnacki <drogus@gmail.com> | 2010-09-03 22:59:10 +0200 |
commit | c7664d112fadb313146da33f48d1da318f249927 (patch) | |
tree | 926ace3a678884f4fe114a0ab2f9c112c4d4c7f2 /actionmailer/lib/action_mailer | |
parent | 99131939316230065b4297573d080d1585e4e5a7 (diff) | |
download | rails-c7664d112fadb313146da33f48d1da318f249927.tar.gz rails-c7664d112fadb313146da33f48d1da318f249927.tar.bz2 rails-c7664d112fadb313146da33f48d1da318f249927.zip |
Include application's helpers and router helpers by default, but include engine's ones for controllers inside isolated namespace
Diffstat (limited to 'actionmailer/lib/action_mailer')
-rw-r--r-- | actionmailer/lib/action_mailer/railtie.rb | 2 | ||||
-rw-r--r-- | actionmailer/lib/action_mailer/railties/routes_helpers.rb | 12 |
2 files changed, 14 insertions, 0 deletions
diff --git a/actionmailer/lib/action_mailer/railtie.rb b/actionmailer/lib/action_mailer/railtie.rb index c888e51b93..26fe125fd8 100644 --- a/actionmailer/lib/action_mailer/railtie.rb +++ b/actionmailer/lib/action_mailer/railtie.rb @@ -1,5 +1,6 @@ require "action_mailer" require "rails" +require "action_mailer/railties/routes_helpers" module ActionMailer class Railtie < Rails::Railtie @@ -20,6 +21,7 @@ module ActionMailer ActiveSupport.on_load(:action_mailer) do include app.routes.url_helpers include app.routes.mounted_helpers(:app) + extend ::ActionMailer::Railties::RoutesHelpers options.each { |k,v| send("#{k}=", v) } end end diff --git a/actionmailer/lib/action_mailer/railties/routes_helpers.rb b/actionmailer/lib/action_mailer/railties/routes_helpers.rb new file mode 100644 index 0000000000..3464ec38e2 --- /dev/null +++ b/actionmailer/lib/action_mailer/railties/routes_helpers.rb @@ -0,0 +1,12 @@ +module ActionMailer + module Railties + module RoutesHelpers + def inherited(klass) + super(klass) + if namespace = klass.parents.detect {|m| m.respond_to?(:_railtie) } + klass.send(:include, namespace._railtie.routes.url_helpers) + end + end + end + end +end |