コードのテスト

いきなりだけど、PyramidでMongodb接続するときはこんな感じ。

__init__.py

def main(global_config, **settings):

    #MongoDB Connect
    conn = Connection('localhost', 27017)
    config.registry.settings['db_conn'] = conn

    def add_mongo_db(event):
        #接続情報格納
        settings = event.request.registry.settings
        db = settings['db_conn'][DB_NAME]
        event.request.db = db

    config.add_subscriber(add_mongo_db, NewRequest)

使うのはこう

views.py

@view_config(route_name='dashboard',
             renderer="myapp:templates/dashboard.pt")
def dashboard(request):
    vendors = request.db['vendors'].find()

だいぶ楽。

参考:
http://docs.pylonsproject.org/projects/pyramid_cookbook/en/latest/database/mongodb.html