【问题标题】:Clear db with mongoid3使用 mongoid3 清除数据库
【发布时间】:2012-10-24 09:27:43
【问题描述】:

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

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

【问题讨论】:

    标签: mongoid mongoid3


    【解决方案1】:

    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
    

    【讨论】:

      【解决方案2】:

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

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

      【讨论】:

        【解决方案3】:

        您可能想看看database_cleaner gem,它在规范中抽象了清理数据库

        【讨论】:

        • 谢谢,我正在使用这个 gem。
        【解决方案4】:

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

        【讨论】:

          猜你喜欢
          • 2012-11-13
          • 1970-01-01
          • 2015-09-08
          • 2011-04-21
          • 2013-06-08
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-01-30
          相关资源
          最近更新 更多