2011-02-12 36 views
0

我的当前rails应用程序由mongoid/mongo支持。在每次测试之间,我想清除数据库。为此我跑使用红宝石驱动程序原子去除mongo集合

::Mongoid.database.collections.select { |c| c.name !~ /^system/ }.each { |c| c.remove() } 

问题是拆卸的集合似乎在后台运行。有时下一个测试将开始,插入一个文档,然后通过删除操作清除它。有什么办法可以阻止集合清除吗?

我知道有一个$ atomic选项,查看了mongo/collection的源代码我看不到任何方法来传递选项。我怎样才能使collcetion去除阻塞?

回答