我喜欢在每次运行单元测试并清除mongo db之前执行设置,如何使用mongoid进行设置?
我在谷歌搜索时发现了一些关于它的链接,但似乎没有任何效果。
答案 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中删除数据库。