使用mongoid3清除数据库

时间:2012-11-04 07:41:39

标签: mongoid mongoid3

我喜欢在每次运行单元测试并清除mongo db之前执行设置,如何使用mongoid进行设置?

我在谷歌搜索时发现了一些关于它的链接,但似乎没有任何效果。

4 个答案:

答案 0 :(得分:5)

rake -T

的输出
rake db:drop           # Drops all the collections for the database for the current Rails.env
..
rake db:mongoid:drop   # Drops the database for the current Rails.env
rake db:mongoid:purge  # Drop all collections except the system collections
..
rake db:purge          # Drop all collections except the system collections

答案 1 :(得分:2)

您可能需要查看database_cleaner gem,它在规范中抽象清理数据库

答案 2 :(得分:1)

mongoid组中的discussion(删除Mongoid 3中的所有集合)似乎是相关的。有两种方法purge!truncate!。清除删除集合,这也意味着索引。截断只删除每个集合中的文档,这意味着您保留索引,但它比清除慢。

答案 3 :(得分:0)

如果您正在使用Rails,则可以运行rake db:mongoid:purge以删除除系统集合之外的所有集合。

或者,运行rake db:mongoid:drop从当前的Rails.env中删除数据库。