aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarcel Molina <marcel@vernix.org>2006-03-23 21:56:38 +0000
committerMarcel Molina <marcel@vernix.org>2006-03-23 21:56:38 +0000
commitcb069ea7cc0c530b6d1a3cbd636d728568b3f041 (patch)
tree70b9e4b484bd7a0e6f67877fa57a3d0d60ebe9dc
parent4a968d464b32f83856761c60135e29326c6245fc (diff)
downloadrails-cb069ea7cc0c530b6d1a3cbd636d728568b3f041.tar.gz
rails-cb069ea7cc0c530b6d1a3cbd636d728568b3f041.tar.bz2
rails-cb069ea7cc0c530b6d1a3cbd636d728568b3f041.zip
Don't polute the top level namespace in the console with ActionView helpers. Make them available from a helper method.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4019 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
-rw-r--r--railties/CHANGELOG4
-rw-r--r--railties/lib/console_with_helpers.rb12
2 files changed, 12 insertions, 4 deletions
diff --git a/railties/CHANGELOG b/railties/CHANGELOG
index ce65b38f28..84f9727171 100644
--- a/railties/CHANGELOG
+++ b/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>
diff --git a/railties/lib/console_with_helpers.rb b/railties/lib/console_with_helpers.rb
index cb317583e3..66a4248e0b 100644
--- a/railties/lib/console_with_helpers.rb
+++ b/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 @@ module Kernel
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