ruby-on-rails – 如何使用rails将数据库迁移到第一个版本,而不会先删除数据库?

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 如何使用rails将数据库迁移到第一个版本,而不会先删除数据库?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个数据库设置为我的Rails安装和一些迁移设置.我希望能够将我的数据库重置为没有表/约束/等等,但是如果不知道迁移次数或第一次迁移的时间戳,则无法找到合理的方法.这是我看到他们的选择:

> rake db:migrate:reset
> rake db:migrate:down VERSION = 20090701154839其中20090701154839是与第一次迁移相关联的时间戳
> rake db:rollback STEP = 15已经有15次迁移

db:migrate:reset的问题是它首先丢弃数据库(db:drop,db:create,然后是db:migrate).

db:migrate:down的问题是我不想对开始的VERSION进行编码.

db:rollback的问题是我不知道回到开始的步骤数.

我有什么选择?

解决方法

rake db:migrate VERSION=0

即使您使用较新的timestamped迁移文件,它也可以工作.

更新:我刚刚在Rails 3.2.1上测试过,它仍然可以工作.它运行schema_migrations已知的所有迁移的“down”部分.我不知道它是否在3.1版本上工作,但下面的评论表明这个功能在那段时间内被打破了.

猜你在找的Ruby相关文章