Extends Sinatra with an extension method for dealing with monogodb using the ruby driver.

Install it with gem:

$ gem install sinatra-mongo

Now we can use it an example application.

require 'sinatra'
require 'sinatra/mongo'

# Specify the database to use. Defaults to mongo://localhost:27017/default,
# so you will almost definitely want to change this.
# Alternatively, you can specify the MONGO_URL as an environment variable
set :mongo, 'mongo://localhost:27017/sinatra-mongo-example'

# At this point, you can access the Mongo::Database object using the 'mongo' helper:

puts mongo["testCollection"].insert {"name" => "MongoDB", "type" => "database", "count" => 1, "info" => {"x" => 203, "y" => '102'}}

get '/' do

If you need to use authentication, you can specify this in the mongo uri:

set :mongo, 'mongo://myuser:mypass@localhost:27017/sinatra-mongo-example'

Mongo Reference


Note on Patches/Pull Requests

  • Fork the project.

  • Make your feature addition or bug fix.

  • Add tests for it. This is important so I don't break it in a future version unintentionally.

  • Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)

  • Send me a pull request. Bonus points for topic branches.

Copyright © 2009 Joshua Nichols. See LICENSE for details.

installgem install sinatra-mongo

Joshua Nichols

4,982 total downloads 2,370 for this version


gem 'sinatra-mongo', '~> 0.1.0'
  1. 0.1.0 May 6, 2010 (9 KB)
  2. 0.0.2 December 10, 2009 (7 KB)
  3. 0.0.1 December 9, 2009 (6.5 KB)
Runtime Dependencies
  1. mongo >= 0
  2. sinatra >= 0.9.4
Development Dependencies
  1. rack-test >= 0.5.3
  2. rspec >= 1.2.9