Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

49 lines (35 sloc) 1.193 kb
$:.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
require 'mongo'
require 'pp'
include Mongo
host = ENV['MONGO_RUBY_DRIVER_HOST'] || 'localhost'
port = ENV['MONGO_RUBY_DRIVER_PORT'] || Connection::DEFAULT_PORT
puts "Connecting to #{host}:#{port}"
db = Connection.new(host, port).db('ruby-mongo-examples')
coll = db.collection('test')
# Erase all records from collection, if any
coll.remove
# Insert 3 records
3.times { |i| coll.insert({'a' => i+1}) }
# Cursors don't run their queries until you actually attempt to retrieve data
# from them.
# Find returns a Cursor, which is Enumerable. You can iterate:
coll.find().each { |row| pp row }
# You can turn it into an array:
array = coll.find().to_a
# You can iterate after turning it into an array (the cursor will iterate over
# the copy of the array that it saves internally.)
cursor = coll.find()
array = cursor.to_a
cursor.each { |row| pp row }
# You can get the next object
first_object = coll.find().next_document
# next_document returns nil if there are no more objects that match
cursor = coll.find()
obj = cursor.next_document
while obj
pp obj
obj = cursor.next_document
end
# Destroy the collection
coll.drop
Jump to Line
Something went wrong with that request. Please try again.