【发布时间】:2016-07-26 17:53:02
【问题描述】:
我已经在我的用户表中添加了“激活”作为布尔值。我忘记将它添加为默认值,所以我生成了这个迁移:
rails g migration add_default_to_users_activated
然后我在这里添加了第 3 行:
class AddDefaultToUsersActivated < ActiveRecord::Migration
def change
change_column_default :users, :activated, true
end
end
然后我在没有任何问题的情况下运行了迁移。我意识到我应该添加 'false' 而不是 'true',所以我想反转迁移,只需将 add_default_to_users_activated.rb 文件更改为 'false' 但是,当我运行
rake db:rollback
rake 由于 ActiveRecord::IrreversibleMigration 而中止。
但是我设置的机制是什么,可以防止迁移被还原,我该如何解决?
编辑: 我正在运行 rails 4.2
【问题讨论】:
标签: ruby-on-rails rails-activerecord reverse rollback rails-migrations