2
我得到的轨道使用迁移文件名中的时间戳。它如何利用这些来确定到目前为止运行的迁移以及还需要运行哪些迁移?有没有存储的值可以让它知道上次运行的迁移?Rails如何知道我有未完成的迁移?
我得到的轨道使用迁移文件名中的时间戳。它如何利用这些来确定到目前为止运行的迁移以及还需要运行哪些迁移?有没有存储的值可以让它知道上次运行的迁移?Rails如何知道我有未完成的迁移?
在您的数据库中,有一个名为schema_migrations
的表可以跟踪它。它由rails自动维护,并有一个名为version
的列。该列保存迁移的日期 - 时间戳,每行代表已经运行的迁移。
因此,Rails可以查看您应用中的所有'迁移'文件,找出哪些表中没有相应的行,然后运行它们(将新行添加到模式迁移表中,对于每次迁移,因为它运行)
下面是一个schema_migrations
表的内容的示例。
谢谢!正是我在找什么 – user2490003