Вам также необходимо заменить ваши индексы:
class RenameOldTableToNewTable< ActiveRecord:Migration
def self.up
remove_index :old_table_name, :column_name
rename_table :old_table_name, :new_table_name
add_index :new_table_name, :column_name
end
def self.down
remove_index :new_table_name, :column_name
rename_table :new_table_name, :old_table_name
add_index :old_table_name, :column_name
end
end
И переименуйте свои файлы и т. Д. Вручную, как описано в других ответах.
Смотрите: http://api.rubyonrails.org/classes/ActiveRecord/Migration.html
Убедитесь, что вы можете выполнить откат и выполнить откат после написания этой миграции. Это может быть сложно, если вы что-то не так и застряли с миграцией, которая пытается повлиять на то, что больше не существует. Лучше всего уничтожить всю базу данных и начать заново, если вы не можете откатиться назад. Так что имейте в виду, что вам может понадобиться что-то для резервного копирования.
Кроме того: проверьте schema_db для любых соответствующих имен столбцов в других таблицах, определенных has_ или own_to или чем-то. Вам, вероятно, придется редактировать их тоже.
И, наконец, делать это без набора регрессионных тестов было бы чокнутым.