ot-mongodb-init-experimental

0.0.4 • Public • Published

Hapi mongodb-init

Build Status NPM version Dependencies

Initialises mongodb connections (per database), and manages indexes.

This module doesn't explicitly depend on mongodb, but requires it to be passed in on the options. This means you're free to use your favourite version. Tested with 1.4.7 and up.

To initialise:

var hapi = require("hapi");

hapi.createServer();

server.plugin.register({
  plugin: require("hapi-mongodb-init"),
  options: {
    dbs: [{
         connectionString: 'mongodb://127.0.0.1/test',
         name: 'myconnection',
         indexes: [
          {
              collection: 'mycoll',
              name: "myfield_1",
              fields: {
                  myfield: 1
              }
          }
         ]
      }],
      mongo: require("mongodb")
  }
});

To use inside a module:

var dbs = require('hapi-mongodb-init');

var db = dbs.db('myconnection');

db.collection('mycoll').findOne({ myfield: 'foo'}, function(err, value){
  console.log(value);
});

You're managing indexes inside your app, isn't that dangerous?

For small data sets, (where building indexes is trivial), we find it works.

You can turn off the index management by setting:

server.plugin.register({
  plugin: require("hapi-mongodb-init"),
  options: {
    dbs: [{
         connectionString: 'mongodb://127.0.0.1/test',
         name: 'myconnection',
         manageIndexes: false
      }],
      mongo: require("mongodb")
  }
});

Readme

Keywords

none

Package Sidebar

Install

npm i ot-mongodb-init-experimental

Weekly Downloads

0

Version

0.0.4

License

MIT

Last publish

Collaborators

  • stevejhiggs