From 555a956a66628f0c14440e350fefe62125067058 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Valim?= Date: Wed, 1 Jul 2009 12:07:05 +0200 Subject: Ensure both migration and routes are removed on revoke. --- railties/lib/generators/migration.rb | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'railties/lib/generators/migration.rb') diff --git a/railties/lib/generators/migration.rb b/railties/lib/generators/migration.rb index 1981ea6a59..2eb7c0a964 100644 --- a/railties/lib/generators/migration.rb +++ b/railties/lib/generators/migration.rb @@ -25,11 +25,13 @@ module Rails @migration_file_name = File.basename(destination).sub(/\.rb$/, '') @migration_class_name = @migration_file_name.camelize - if existing = migration_exists?(migration_dir, @migration_file_name) - raise Rails::Generators::Error, "Another migration is already named #{@migration_file_name}: #{existing}" + destination = migration_exists?(migration_dir, @migration_file_name) + + if behavior == :invoke + raise Error, "Another migration is already named #{@migration_file_name}: #{destination}" if destination + destination = File.join(migration_dir, "#{@migration_number}_#{@migration_file_name}.rb") end - destination = File.join(migration_dir, "#{@migration_number}_#{@migration_file_name}.rb") template(source, destination, log_status) end -- cgit v1.2.3