我不擅长命名,并意识到在我的 Rails 应用程序中有一组更好的模型名称。 有没有办法使用迁移来重命名模型及其对应的表?
这是一个例子:
class RenameOldTableToNewTable < ActiveRecord::Migration def self.up rename_table :old_table_name, :new_table_name end def self.down rename_table :new_table_name, :old_table_name end end
我不得不手动重命名模型声明文件。
编辑:
在 Rails 3.1 和 4 中,ActiveRecord::Migration::CommandRecorder知道如何反向 rename_table 迁移,所以你可以这样做:
ActiveRecord::Migration::CommandRecorder
class RenameOldTableToNewTable < ActiveRecord::Migration def change rename_table :old_table_name, :new_table_name end end
(您仍然需要手动重命名文件。)