我会为一个模型进行多次还是一次迁移?

Will I make many or just one migration for a model?

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

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

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

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

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

要进一步了解此主题,您可以参阅 this official page for migrations in rails