0

因此,在阅读了很多内容之后,我发现我不需要提前计划我的数据库。我刚开始研究应用程序,并对每一项变更进行迁移。Rails项目中的数据库结构并跟踪迁移

因此,例如,如果我决定添加一些东西,我通过迁移添加它。然后在另一次迁移中,我因某种原因删除它。最后,我决定把它弄回来。经过一段时间后,会出现一系列的迁移。

我该如何跟踪他们?首先想到数据库结构会更容易吗?

回答

0

Rails的方式是通过迁移来完成所有的事情。根据你的情况,它会像

migration1 #add column A 
migration2 #remove column A 
migration3 #add column A again 

它似乎有很多的迁移,但在实际情况下,它会保持你的数据库变化干净。 Coz在任何时候当你做

rake db:migrate 

轨道将只运行未决的迁移。

在任何给定时间,您将看到db/schema.rb文件,其中包含所有迁移和最新迁移编号作为版本。

但话虽如此,如果你想恢复迁移有命令如rollback命令read more about migrations

0

您可以在db/schema.rb内看到您的数据库结构,它会向您显示当前在您应用程序中的所有表格,列和索引。

如果您不断更换某一列,这不会有帮助,但您也可以运行rake db:migrate:status,该列表将输出所有迁移的列表,并告诉您它们是否已运行。