1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

Fixed scaffold generator when started with only 1 parameter (closes #2609) [self@mattmower.com]

git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2780 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
This commit is contained in:
David Heinemeier Hansson 2005-10-28 07:50:42 +00:00
parent bc73b838e0
commit 9bafd35375
3 changed files with 20 additions and 1 deletions

View file

@ -1,5 +1,7 @@
*SVN*
* Fixed scaffold generator when started with only 1 parameter #2609 [self@mattmower.com]
* rake should run functional tests even if the unit tests have failures [Jim Weirich]
* Back off cleanpath to be symlink friendly. Closes #2533 [Nicholas Seckar]

View file

@ -46,9 +46,16 @@ class ScaffoldGenerator < Rails::Generator::NamedBase
def initialize(runtime_args, runtime_options = {})
super
@controller_name = args.shift or (ActiveRecord::Base.pluralize_table_names ? @name.pluralize : @name)
if runtime_args.length > 1
@controller_name = runtime_args[1]
else
@controller_name = (ActiveRecord::Base.pluralize_table_names ? @name.pluralize : @name)
end
base_name, @controller_class_path, @controller_file_path, @controller_class_nesting, @controller_class_nesting_depth = extract_modules(@controller_name)
@controller_class_name_without_nesting, @controller_singular_name, @controller_plural_name = inflect_names(base_name)
if @controller_class_nesting.empty?
@controller_class_name = @controller_class_name_without_nesting
else

View file

@ -92,4 +92,14 @@ class RailsGeneratorTest < Test::Unit::TestCase
g = Rails::Generator::Base.instance('working', %w(admin/foo bar baz))
assert_equal g.singular_name, g.table_name
end
def test_scaffold_controller_name
# Default behaviour is use the model name
g = Rails::Generator::Base.instance('scaffold', %w(Product))
assert_equal "Product", g.controller_name
# When we specify a controller name make sure it sticks!!
g = Rails::Generator::Base.instance('scaffold', %w(Product Admin))
assert_equal "Admin", g.controller_name
end
end