Skip to main content

An improved package that provides mongodb connectivity. Not compatible with pyramid_mongo or pyramid_mongodb

Project description

Pyramid Mongodb

A simple library to integrate mongodb into your pyramid application. Integrates with pyramid_mongodb2_debugtoolbar.

Features

  • Supports multiple databases
  • Configuration only setup
  • Integrated debugtoolbar
  • Avoids recreating

Setup

pip install pyramid_mongodb 

Add the following to your application's ini file, (include pyramid_mongodb_debugtoolbar if you want to debug):

[app:main]
mongo_uri = mongodb://username:password@mongodb.host.com:27017/authdb
mongo_db = 
    foo
    bar
pyramid.includes =
    pyramid_mako    
    pyramid_debugtoolbar
    pyramid_mongodb
    pyramid_mongodb_debugtoolbar
debugtoolbar.includes =
    pyramid_mongodb_debugtoolbar:MongoToolbar

The code will use config.add_request_method() to add a Database object to your requests, where each database is accessable by db_database_name, as defined in your configuration. In your code where you can access request, you now have the following variables:

request.db
request.db_foo
request.db_bar

request.db is the MongoClient object, should you ever need it.

In your view code, you can do this:

from pyramid.view import view_config

@view_config(route_name='home', renderer="templates/landing.mako")
def my_view(request):
    return {
        'some_data': request.db_foo.some_collection.find({'a': {'$gte': 5}}, {'_id': False}),
        'other_data': request.db_bar.visitors.insert_one({'person': request.remote_addr}),
    }

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyramid_mongodb2-1.5.tar.gz (2.3 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page