2011-03-27 168 views
2

我有db:seed任务,可以添加我的数据库中的初始数据。有没有办法清除数据库,以便它将删除所有数据库的所有内容,但将表保留在那里,以便我不必再次运行所有迁移?如何清空数据库中的所有结果?

回答

3

如果您重新设置干净的数据库,则不应该运行迁移,您应该通过db:schema:load加载schema.rb(更大的项目将在迁移中包含不再运行的代码,例如因为类已重命名) 。

rake db:drop db:create db:schema:load db:seed 
+0

我怎么能添加为内我的任务的任务,这样我可以把所有这些任务的前提条件? – Geo 2011-03-27 14:18:07

+0

类似于'task:bootstrap_my_app => [“db:drop”,“db:create”,“db:schema:load”,“db:seed”]应该有效。 – 2011-03-27 15:19:25

+1

'drop/create/load'可以替换为'reset' – Gareth 2011-03-27 16:02:53

1

您还可以运行rake db:migrate:reset; rake db:seed

相关问题