A MongoDB adapter for thinodium which internally uses the official MongoDB driver.
Special features:
- Creates indexes if they don't already exist.
$ npm install thinodium thinodium-mongodb [email protected]
Note: Node 6 or above is required for this adapter
const Thinodium = require('thinodium');
const db = yield Thinodium.connect('mongodb', {
// connection string
url: 'mongodb://localhost:27017/test',
/* all options get passed to native driver module */
...
});
/*
This will create the "User" table and all specified indexes if they
don't already exist.
*/
const User = yield db.model('User', {
/* See https://docs.mongodb.com/manual/reference/method/db.collection.createIndex/#db.collection.createIndex */
indexes: [
{
keys: { age: 1 },
options: {
name: 'age_up'
}
},
{
keys: { name: 1 },
options: {
unique: true
}
},
],
});
// insert a new user
let user = yield User.insert({
name: 'john'
});
// ... normal thinodium API methods available at this point
Check out the thinodium docs for further usage examples and API docs.
To run the tests you will need MongoDB installed and running with default host and port settings. Then on the command-line:
$ npm install
$ npm test
Contributions are welcome! Please see CONTRIBUTING.md.
MIT - see LICENSE.md