【问题标题】:Will I make many or just one migration for a model?我会为模型进行多次或一次迁移吗?
【发布时间】:2016-04-02 12:26:10
【问题描述】:

迁移指令是否会改变模型?我会进行多次迁移,还是每个表都会进行一次迁移?例如,假设我想将“username”更改为“admin_username”。这需要迁移吗?然后,假设我决定要添加“年龄”。我必须进行新的迁移,还是只需将其添加到上述迁移中?

【问题讨论】:

    标签: ruby-on-rails migration rake dbmigrate


    【解决方案1】:

    您可以进行所需的迁移数量。我的建议是,尝试计划您的项目并查看您的模型需要如何避免迁移。迁移功能是向模型添加、删除、重命名字段等的好方法。

    如果您需要更改模型Userusername,则运行rails g migration renameUsernameInUsers 并添加必要的代码以在您最近创建的迁移文件中更改该字段的名称。 如果几分钟后您意识到您还需要添加一个字段,您可以根据需要进行新的迁移,并在一次迁移中添加一个字段或添加多个字段。

    请记住,要应用您的迁移,您需要运行 rake db:migrate。如果您修改已使用此命令迁移的迁移文件中的代码,它将不会对您的模型产生影响。您将需要新的迁移。

    总之,您可以(将)为一个模型进行多次迁移。

    要进一步了解该主题,您可以查看this official page for migrations in rails

    【讨论】:

    • 这里就是“迁移功能是添加、删除、重命名模型中字段等的好方法。”这是我需要听到的。所以它不是一个组件,它是一个工具?谢谢!
    • 确切地说,此功能的最大好处是您可以随时更改您的数据库,即使在部署之后也是如此。我建议您阅读本页的第一行 edgeguides.rubyonrails.org/active_record_migrations.html 它会让您对迁移有所了解。
    猜你喜欢
    • 2010-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-12
    • 2022-11-27
    • 2021-10-06
    • 2021-02-23
    相关资源
    最近更新 更多