mongoid rails mongodb数据没有清理

时间:2012-02-21 11:11:34

标签: ruby-on-rails mongodb mongoid activemodel

  

Rails 3.2.1

     

app name:demo

     

数据库:mongoDB with mongoid

我在rails 3.2.1中设置了这个脚手架:localhost:3000 / pages,

我有这些字段:标题,内容。

我已经为每个字段填写了3行数据。

问题是:删除应用程序(删除根文件夹)并使用相同的脚手架(页面)创建相同的应用程序名称(演示)后,这3行数据仍然显示,我不再需要了

任何人都可以如何清理数据库?谢谢

3 个答案:

答案 0 :(得分:5)

我所知道的最简单的方法是

rake db:mongoid:drop

正如其他人所说,你可以去rake --tasks并看到它

答案 1 :(得分:3)

数据库存在于您的应用程序之外,因此删除您的应用程序不会影响它。要清空或删除它,您需要使用mongo命令行或其他mongo工具。打开终端/命令提示符并键入:

mongo

你应该得到mongo命令行。切换到您的应用的数据库(它很可能是[app_name]_[environment]

的形式
use demo_development

并使用dropDatabase命令:

db.dropDatabase()

答案 2 :(得分:1)

以下是如何在应用程序命名空间中定义名为db_reset的任务的快速摘录。如果正确安装了MongoId gem,它将丢弃系统和Mongo DB

<强> LIB /任务/ app_name.rake:

namespace Rails.application.class.parent do
  desc 'Drops and recreates both Mongo and system databases for the current environment and loads the seeds.'
  task db_reset: :environment do
    Rake::Task['db:mongoid:purge'].invoke
    Rake::Task['db:reset'].invoke
  end
end