mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
907d6ce285
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7765 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
26 lines
593 B
Ruby
26 lines
593 B
Ruby
class Module
|
|
def include_all_modules_from(parent_module)
|
|
parent_module.constants.each do |const|
|
|
mod = parent_module.const_get(const)
|
|
if mod.class == Module
|
|
send(:include, mod)
|
|
include_all_modules_from(mod)
|
|
end
|
|
end
|
|
end
|
|
end
|
|
|
|
def helper(*helper_names)
|
|
returning @helper_proxy ||= Object.new do |helper|
|
|
helper_names.each { |h| helper.extend "#{h}_helper".classify.constantize }
|
|
end
|
|
end
|
|
|
|
require 'application'
|
|
|
|
class << helper
|
|
include_all_modules_from ActionView
|
|
end
|
|
|
|
@controller = ApplicationController.new
|
|
helper :application rescue nil
|