Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 删除最近添加的列_Ruby On Rails_Migration - Fatal编程技术网

Ruby on rails 删除最近添加的列

Ruby on rails 删除最近添加的列,ruby-on-rails,migration,Ruby On Rails,Migration,曾经有一段时间,我不得不把一列“column”添加到一个模型中。现在我必须把它取下来。除了添加新迁移的简单方法外,还有其他合理的方法吗?您当然可以直接在数据库上运行SQL。不使用迁移文件执行此“细微更改”的问题在于,如果必须将应用程序移动到另一台服务器,则将无法重新创建数据库:此“列”列将出现,因为它的删除从未记录 坚持迁移 根据兔子洞的深度,您可以回滚然后删除迁移 rake db:rollback rails destroy migration *name of migration* 这将

曾经有一段时间,我不得不把一列“
column
”添加到一个模型中。现在我必须把它取下来。除了添加新迁移的简单方法外,还有其他合理的方法吗?

您当然可以直接在数据库上运行SQL。不使用迁移文件执行此“细微更改”的问题在于,如果必须将应用程序移动到另一台服务器,则将无法重新创建数据库:此“列”列将出现,因为它的删除从未记录


坚持迁移

根据兔子洞的深度,您可以回滚然后删除迁移

rake db:rollback

rails destroy migration *name of migration*
这将运行迁移的向下方法,撤消列添加。第二个命令通过重置模式文件来销毁迁移

编辑:


原来你的兔子洞很深。最好的做法是进行另一次迁移,删除列。

添加迁移文件是最佳做法