diff options
author | Piotr Sarnacki <drogus@gmail.com> | 2010-08-23 19:25:04 +0200 |
---|---|---|
committer | Piotr Sarnacki <drogus@gmail.com> | 2010-09-03 22:59:13 +0200 |
commit | e35c2043b135a95104e3eeb3e12cbcde541fa1b4 (patch) | |
tree | 896b91d776eac389300edd653ed20c88fcf11218 /railties/lib/rails/engine.rb | |
parent | 98ab4ded376c3d04540bdbdfe6dbbf88c0738701 (diff) | |
download | rails-e35c2043b135a95104e3eeb3e12cbcde541fa1b4.tar.gz rails-e35c2043b135a95104e3eeb3e12cbcde541fa1b4.tar.bz2 rails-e35c2043b135a95104e3eeb3e12cbcde541fa1b4.zip |
Include all helpers from non-namespaced engines
Diffstat (limited to 'railties/lib/rails/engine.rb')
-rw-r--r-- | railties/lib/rails/engine.rb | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/railties/lib/rails/engine.rb b/railties/lib/rails/engine.rb index 3d4bbca5d7..bc3014adaa 100644 --- a/railties/lib/rails/engine.rb +++ b/railties/lib/rails/engine.rb @@ -242,7 +242,7 @@ module Rails autoload :Configuration, "rails/engine/configuration" class << self - attr_accessor :called_from + attr_accessor :called_from, :namespaced alias :engine_name :railtie_name def inherited(base) @@ -292,11 +292,17 @@ module Rails "#{name}_" end end + + self.namespaced = true + end + + def namespaced? + !!namespaced end end delegate :middleware, :root, :paths, :to => :config - delegate :engine_name, :to => "self.class" + delegate :engine_name, :namespaced?, :to => "self.class" def load_tasks super @@ -435,6 +441,14 @@ module Rails config.static_asset_paths[config.compiled_asset_path] = public_path end end + + initializer :prepend_helpers_path do + unless namespaced? + config.helpers_paths = [] unless config.respond_to?(:helpers_paths) + config.helpers_paths = config.paths.app.helpers.to_a + config.helpers_paths + end + end + protected def find_root_with_flag(flag, default=nil) root_path = self.class.called_from |