是否可以使用如下命令重命名列:
script/generate migration AddColumnToTable column:type
Run Code Online (Sandbox Code Playgroud)
?谢谢.
sco*_*ttd 17
Rails确实在被调用的ActiveRecord ConnectionAdapter上有一个迁移命令rename_column.您可以生成迁移,然后自己编写代码.示例(MySQL):
script/generate migration rename_my_column_by_hand
Run Code Online (Sandbox Code Playgroud)
然后编辑它创建的文件:
class RenameMyColumnByHand < ActiveRecord::Migration
def self.up
rename_column :my_table, :old_name, :new_name
end
def self.down
rename_column :my_table, :new_name, :old_name
end
end
Run Code Online (Sandbox Code Playgroud)
它执行SQL,如:
ALTER TABLE my_table CHANGE old_name new_name BIGINT;
Run Code Online (Sandbox Code Playgroud)
注意这仅重命名列,它不会重命名您在其他表上的任何引用.
| 归档时间: |
|
| 查看次数: |
7529 次 |
| 最近记录: |