ruby - 从 mongoDB 中删除文档

标签 ruby mongodb mongomapper

这可能是一个非常愚蠢的问题,但我是 MongoDB 的新手,所以请多多包涵。我创建了一个独立的 ruby 类:

require 'rubygems'
require 'mongo'

require 'bson'
require 'mongo_mapper'

MongoMapper.database = "testing"

class Twit
  include MongoMapper::Document

  key :id,          Integer, :unique => true
  key :screen_name, String,  :unique => true

...

然后我使用 irb 执行以下操作

>> twit = Twit.all.first
 => #<Twit _id: BSON::ObjectId('4df2d4a0c251b2754c000001'), id: 21070755, screen_name: "bguestSB"> 
>> twit.destroy
 => true 
>> Twit.all
 => [#<Twit _id: BSON::ObjectId('4df2d4a0c251b2754c000001'), id: 21070755, screen_name: "bguestSB">] 

那么如何销毁 MongoDB 中的文档呢?我做错了什么?

最佳答案

想象一下,您想要删除所有“名称”字段为空的文档。所以这是它的代码:

require 'rubygems'
require 'mongo'

db = Mongo::Connection.new("localhost").db("db_name")
coll = db.collection("coll_name")

coll.find({:name => ""}).each do |empty_doc|
  coll.remove(empty_doc)
end

关于ruby - 从 mongoDB 中删除文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6314139/

相关文章:

ruby - 用 Ruby 制作一个简单的战舰游戏

ruby - 在Ruby中,如果你将一个函数赋值给一个变量,为什么它会自动运行?

Mongodb 复制集服务器状态 : What does FATAL status actually mean?

Ruby Sinatra - 在 mongoHQ 上连接到 mongoDB 失败

ruby - 错误处理 : How to throw/catch errors correctly

ruby-on-rails - 更改参数[ :id] in Ruby on Rails

node.js - Node js Monk 更新持续存在

mongodb - 嵌入式文档上 findAndModify 的原子性

ruby - 使用 mongomapper 在 Array 字段中查找包含元素的文档?

ruby - 如何在同一个 Ruby Rails 项目中配置 MongoMapper 和 ActiveRecord