aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib/generators/base.rb
diff options
context:
space:
mode:
authorJosé Valim <jose.valim@gmail.com>2009-07-01 21:23:30 +0200
committerJosé Valim <jose.valim@gmail.com>2009-07-02 10:27:40 +0200
commita7c1591315b49e94798d6d51446cbc4139463140 (patch)
tree983212f5a306d88e8d3ec227bdf7ec0e23d8dcc5 /railties/lib/generators/base.rb
parent7f7afdf0f11b6748ace1ee48f8d604637058001e (diff)
downloadrails-a7c1591315b49e94798d6d51446cbc4139463140.tar.gz
rails-a7c1591315b49e94798d6d51446cbc4139463140.tar.bz2
rails-a7c1591315b49e94798d6d51446cbc4139463140.zip
Added stylesheets controller which is invoked by scaffold.
Diffstat (limited to 'railties/lib/generators/base.rb')
-rw-r--r--railties/lib/generators/base.rb31
1 files changed, 15 insertions, 16 deletions
diff --git a/railties/lib/generators/base.rb b/railties/lib/generators/base.rb
index 81f6c7b343..aeb79dd339 100644
--- a/railties/lib/generators/base.rb
+++ b/railties/lib/generators/base.rb
@@ -13,6 +13,7 @@ module Rails
:resource_controller => 'controller',
:scaffold_controller => 'scaffold_controller',
:singleton => false,
+ :stylesheets => true,
:test_framework => 'test_unit',
:template_engine => 'erb',
:timestamps => true
@@ -24,6 +25,7 @@ module Rails
:orm => '-o',
:resource_controller => '-c',
:scaffold_controller => '-c',
+ :stylesheets => '-y',
:test_framework => '-t',
:template_engine => '-e'
}
@@ -132,8 +134,9 @@ module Rails
# def invoke_for_test_framework
# return unless options[:test_framework]
#
- # klass = Rails::Generators.find_by_namespace(options[:test_framework],
- # "rails", "model")
+ # klass_name = options[:test_framework]
+ # klass_name = :test_framework if TrueClass === klass_name
+ # klass = Rails::Generators.find_by_namespace(klass_name, "rails", "model")
#
# if klass
# say_status :invoke, options[:test_framework], :blue
@@ -142,18 +145,20 @@ module Rails
# say "Could not find and invoke '#{options[:test_framework]}'"
# end
# end
+ #
class_eval <<-METHOD, __FILE__, __LINE__
def invoke_for_#{name}
return unless options[#{name.inspect}]
- klass = Rails::Generators.find_by_namespace(options[#{name.inspect}],
- #{base_name.inspect}, #{as.inspect})
+ klass_name = options[#{name.inspect}]
+ klass_name = #{name.inspect} if TrueClass === klass_name
+ klass = Rails::Generators.find_by_namespace(klass_name, #{base_name.inspect}, #{as.inspect})
if klass
- say_status :invoke, options[#{name.inspect}], #{verbose.inspect}
+ say_status :invoke, klass_name, #{verbose.inspect}
invoke_class_with_block #{name.inspect}, klass
else
- say "Could not find and invoke '\#{options[#{name.inspect}]}'."
+ say "Could not find and invoke '\#{klass_name}'."
end
end
METHOD
@@ -205,9 +210,7 @@ module Rails
#
# def invoke_if_helper
# return unless options[:helper]
- #
- # klass = Rails::Generators.find_by_namespace(:helper,
- # "rails", "controller")
+ # klass = Rails::Generators.find_by_namespace(:helper, "rails", "controller")
#
# if klass
# say_status :invoke, :helper, :blue
@@ -216,12 +219,11 @@ module Rails
# say "Could not find and invoke 'helper'"
# end
# end
+ #
class_eval <<-METHOD, __FILE__, __LINE__
def invoke_if_#{name}
return unless options[#{name.inspect}]
-
- klass = Rails::Generators.find_by_namespace(#{name.inspect},
- #{base_name.inspect}, #{as.inspect})
+ klass = Rails::Generators.find_by_namespace(#{name.inspect}, #{base_name.inspect}, #{as.inspect})
if klass
say_status :invoke, #{name.inspect}, #{verbose.inspect}
@@ -340,10 +342,7 @@ module Rails
end
# Overwrite class options help to allow invoked generators options to be
- # shown when invoking a generator. Only first and second level options
- # are shown, for instance, if a generator invokes an ORM that invokes
- # a test framework, both options are shown, but if a third one is
- # involved, those options do not appear.
+ # shown recursively when invoking a generator.
#
def self.class_options_help(shell, ungrouped_name=nil, extra_group=nil)
group_options = Thor::CoreExt::OrderedHash.new