aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib
diff options
context:
space:
mode:
Diffstat (limited to 'railties/lib')
-rw-r--r--railties/lib/generators/rails/app/templates/config/environment.rb23
-rw-r--r--railties/lib/rails/configuration.rb45
2 files changed, 21 insertions, 47 deletions
diff --git a/railties/lib/generators/rails/app/templates/config/environment.rb b/railties/lib/generators/rails/app/templates/config/environment.rb
index 59c1f0bfb2..94c90475c6 100644
--- a/railties/lib/generators/rails/app/templates/config/environment.rb
+++ b/railties/lib/generators/rails/app/templates/config/environment.rb
@@ -43,24 +43,11 @@ Rails::Initializer.run do |config|
# config.i18n.load_path += Dir[Rails.root.join('my', 'locales', '*.{rb,yml}')]
# config.i18n.default_locale = :de
- # Configure generators default options.
+ # Configure generators values. Many other options are available, be sure to
+ # check the documentation.
config.generators do |g|
- g.rails do |r|
- r.helper = true
- r.stylesheets = true
- end
-
- g.orm :active_record do |ar|
- ar.migration = true
- ar.timestamps = true
- end
-
- g.template_engine :erb do |erb|
- erb.layout = true
- end
-
- g.test_framework :test_unit do |tu|
- tu.fixtures = true
- end
+ g.orm :active_record
+ g.template_engine :erb
+ g.test_framework :test_unit, :fixture => true
end
end
diff --git a/railties/lib/rails/configuration.rb b/railties/lib/rails/configuration.rb
index 4c68ace779..fe3cb67d3a 100644
--- a/railties/lib/rails/configuration.rb
+++ b/railties/lib/rails/configuration.rb
@@ -253,18 +253,9 @@ module Rails
# Holds generators configuration:
#
# config.generators do |g|
- # g.orm :datamapper do |dm|
- # dm.migration = true
- # dm.timestamps = false
- # end
- #
- # g.template_engine = :haml
- # g.test_framework = :datamapper
- #
- # g.plugin do |p|
- # p.aliases :generator => "-g"
- # p.generator = true
- # end
+ # g.orm :datamapper, :migration => true
+ # g.template_engine :haml
+ # g.test_framework :rspec
# end
#
# If you want to disable color in console, do:
@@ -281,30 +272,26 @@ module Rails
end
class Generators #:nodoc:
- attr_reader :aliases, :options
- attr_accessor :colorize_logging
+ attr_accessor :aliases, :options, :colorize_logging
def initialize
- @namespace, @colorize_logging = :rails, true
@aliases = Hash.new { |h,k| h[k] = {} }
@options = Hash.new { |h,k| h[k] = {} }
+ @colorize_logging = true
end
- def aliases(another=nil)
- @aliases[@namespace].merge!(another) if another
- @aliases
- end
- alias :aliases= :aliases
-
def method_missing(method, *args)
- sanitized_method = method.to_s.sub(/=$/, '').to_sym
- @options[@namespace][sanitized_method] = args.first unless args.empty?
-
- if block_given?
- previous_namespace = @namespace
- @namespace = (args.first || sanitized_method).to_sym
- yield self
- @namespace = previous_namespace
+ method = method.to_s.sub(/=$/, '').to_sym
+ namespace = args.first.is_a?(Symbol) ? args.shift : nil
+ configuration = args.first.is_a?(Hash) ? args.shift : nil
+
+ @options[:rails][method] = namespace if namespace
+ namespace ||= method
+
+ if configuration
+ aliases = configuration.delete(:aliases)
+ @aliases[namespace].merge!(aliases) if aliases
+ @options[namespace].merge!(configuration)
end
end
end