Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/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 4 编辑已运行的迁移_Ruby On Rails 4_Migration - Fatal编程技术网

Ruby on rails 4 编辑已运行的迁移

Ruby on rails 4 编辑已运行的迁移,ruby-on-rails-4,migration,Ruby On Rails 4,Migration,有点新问题: 运行迁移后,请说将图像添加到项目中 以及添加必要的列、类型等 然后运行rakedb:migrate 如果我改变了关于迁移的想法,我是否可以编辑迁移并再次运行rake db:migrate?或者这会导致某些东西断裂/不建议这样做 如果我改变了关于移民的想法,我可以吗 只需编辑迁移并再次运行rake db:migrate 你必须遵循这些步骤 执行rake db:rollback或rake db:migrate:down 编辑您的更改和 再次执行rake db:migrate 这将使您的

有点新问题:

运行迁移后,请说将图像添加到项目中

以及添加必要的列、类型等

然后运行rakedb:migrate

如果我改变了关于迁移的想法,我是否可以编辑迁移并再次运行
rake db:migrate
?或者这会导致某些东西断裂/不建议这样做

如果我改变了关于移民的想法,我可以吗 只需编辑迁移并再次运行rake db:migrate

你必须遵循这些步骤

  • 执行
    rake db:rollback
    rake db:migrate:down

  • 编辑您的更改和

  • 再次执行rake db:migrate

  • 这将使您的更改反映在数据库中

    如果您在
    中已经有
    一些数据,并且担心
    丢失它,那么我建议您
    
    创建另一个迁移文件
    ,该文件将反映
    中的更改,而不丢失
    数据

    是的,我最终这样做了,但我很好奇否则会发生什么,或者为什么不建议它?@user3597950不建议什么?请详细说明。如果手动更改迁移,然后运行rake db:migrate,那会有什么作用吗?或者为什么不是这样做的?@user3597950不是这样做的。如果您只是编辑
    迁移文件
    并执行
    rake db:migrate
    ,这将触发
    错误
    。因此在执行此操作之前,您必须执行
    rake db:rollback
    ,以恢复以前的迁移。