曾经有一段时间我需要一个模型“column
”列。现在我必须删除它。除了一个简单的方法之外,是否有任何合理的方法可以添加新的迁移?
答案 0 :(得分:1)
您当然可以直接在数据库上运行SQL。不使用迁移文件来执行这种“细微更改”的问题是,如果您必须将应用程序移动到另一台服务器,您将无法重新创建数据库:此“列”列将存在,因为它是从未记录过删除。
坚持迁移!
答案 1 :(得分:1)
根据兔子洞的深度,你可以回滚然后删除迁移。
rake db:rollback
rails destroy migration *name of migration*
这将运行迁移的down方法撤消列添加。第二个命令会破坏重置模式文件的迁移。
编辑:
原来你的兔子洞很深。最好的办法是进行另一次迁移删除列。