我有一个名为project_updates
的表格,我正在尝试将表格中的列从update
重命名为updates
。我运行了rails g migration change_table
,然后像这样编辑了文件:
class ChangeTable < ActiveRecord::Migration
def change
rename_column :project_updates, :update, :updates
end
end
然后我运行bundle exec rake db:migrate
并且没有任何反应。我拿着控制台查看了模型ProjectUpdate
,它仍然有update
而不是updates
。我该怎么办?
答案 0 :(得分:0)
我认为您应该使用Rails迁移的up
和down
方法。
像这样编辑迁移:
class ChangeTable < ActiveRecord::Migration
def self.up
rename_column :project_updates, :update, :updates
end
def self.down
rename_column :project_updates, :updates, :update
end
end
可能检查你的Rails版本,可能是&lt; Rails 3.1
从Rails 3.1中引入了 change
迁移方法
答案 1 :(得分:0)
我不得不删除架构并运行rake命令再次生成。不确定为什么但它有效。