相关疑难解决方法(0)

如何在不先删除数据库的情况下将带有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:createdb:migrate).

问题db:migrate:down是我不想编码开头的VERSION.

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

我有什么选择?

database migration rake ruby-on-rails

15
推荐指数
1
解决办法
6821
查看次数

使用seeds.rb删除数据库中所有表的所有记录

现在我的方法是一次列出每个表并调用.delete_all它.这是重复的:

例:

#app/db/seeds.rb

Blog.delete_all
Person.delete_all
Post.delete_all
User.delete_all
Author.delete_all
Book.delete_all
# ... on and on for all the tables
Run Code Online (Sandbox Code Playgroud)

然后当然运行rake db:seed将清除上表中的所有记录.

是否有一个命令完全符合我的要求:

  • 删除所有表中的所有记录而不删除表本身?

或者,有没有办法迭代我的所有表和.delete_all每个表?

activerecord ruby-on-rails

4
推荐指数
2
解决办法
3305
查看次数

标签 统计

ruby-on-rails ×2

activerecord ×1

database ×1

migration ×1

rake ×1