Rails迁移:重命名表上的索引

我创建了一个表并添加了一个索引。 在第二次迁移时,我重命名了该表。 该指数会继续运作吗?

Rails 3

不,您需要自己处理索引,因为索引基于表名。 例如:

remove_index :old_table_name, :column_name rename_table :old_table_name, :new_table_name add_index :new_table_name, :column_name 

Rails 4+

从Rails 4升级指南 :

在Rails 4.0中,当重命名列或表时,也会重命名相关索引。 如果您具有重命名索引的迁移,则不再需要它们。