Skip to content
Browse files

Don't polute the top level namespace in the console with ActionView h…

…elpers. Make them available from a helper method.

git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4019 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
  • Loading branch information...
1 parent 4a968d4 commit cb069ea7cc0c530b6d1a3cbd636d728568b3f041 Marcel Molina committed
Showing with 12 additions and 4 deletions.
  1. +2 −2 railties/CHANGELOG
  2. +10 −2 railties/lib/console_with_helpers.rb
View
4 railties/CHANGELOG
@@ -1,10 +1,10 @@
*SVN*
-* Make all ActionView helpers available in the console for debugging purposes. n.b.: Only an 80% solution. Some stuff won't work, most will. [Marcel Molina Jr.]
+* Make all ActionView helpers available in the console from the helper method for debugging purposes. n.b.: Only an 80% solution. Some stuff won't work, most will. [Marcel Molina Jr.]
ex.
- >> puts options_for_select([%w(a 1), %w(b 2), %w(c 3)])
+ >> puts helper.options_for_select([%w(a 1), %w(b 2), %w(c 3)])
<option value="1">a</option>
<option value="2">b</option>
<option value="3">c</option>
View
12 railties/lib/console_with_helpers.rb
@@ -1,4 +1,4 @@
-module Kernel
+class Module
def include_all_modules_from(parent_module)
parent_module.constants.each do |const|
mod = parent_module.const_get(const)
@@ -10,6 +10,14 @@ def include_all_modules_from(parent_module)
end
end
+def helper
+ @helper_proxy ||= Object.new
+end
+
require 'application'
+
+class << helper
+ include_all_modules_from ActionView
+end
+
@controller = ApplicationController.new
-include_all_modules_from ActionView

0 comments on commit cb069ea

Please sign in to comment.
Something went wrong with that request. Please try again.