【发布时间】:2016-04-02 12:26:10
【问题描述】:
迁移指令是否会改变模型?我会进行多次迁移,还是每个表都会进行一次迁移?例如,假设我想将“username”更改为“admin_username”。这需要迁移吗?然后,假设我决定要添加“年龄”。我必须进行新的迁移,还是只需将其添加到上述迁移中?
【问题讨论】:
标签: ruby-on-rails migration rake dbmigrate
迁移指令是否会改变模型?我会进行多次迁移,还是每个表都会进行一次迁移?例如,假设我想将“username”更改为“admin_username”。这需要迁移吗?然后,假设我决定要添加“年龄”。我必须进行新的迁移,还是只需将其添加到上述迁移中?
【问题讨论】:
标签: ruby-on-rails migration rake dbmigrate
您可以进行所需的迁移数量。我的建议是,尝试计划您的项目并查看您的模型需要如何避免迁移。迁移功能是向模型添加、删除、重命名字段等的好方法。
如果您需要更改模型User 的username,则运行rails g migration renameUsernameInUsers 并添加必要的代码以在您最近创建的迁移文件中更改该字段的名称。
如果几分钟后您意识到您还需要添加一个字段,您可以根据需要进行新的迁移,并在一次迁移中添加一个字段或添加多个字段。
请记住,要应用您的迁移,您需要运行 rake db:migrate。如果您修改已使用此命令迁移的迁移文件中的代码,它将不会对您的模型产生影响。您将需要新的迁移。
总之,您可以(将)为一个模型进行多次迁移。
要进一步了解该主题,您可以查看this official page for migrations in rails。
【讨论】: