modella-pouchdb
v1.0.1
Published
pouchdb adaptor for modella
Readme
Modella-PouchDB
Installation
Component:
component install staygrimm/modella-pouchdbnpm:
npm install modella-pouchdbExample
var model = require('modella');
var pouch = require('modella-pouchdb');
var PouchDB = require('pouchdb');
var UserDB = new PouchDB('Users');
var User = model('User')
.attr('_id')
.attr('name')
.attr('email');
User.use(pouch(UserDB));
/**
* Initialize
*/
var user = new User;
user.
._id(new Date().toISOString())
.name('foo')
.email('[email protected]');
user.save(function(err) {
// do something
});API
Pouch(instance)
Initialize adaptor with a PouchDB instance.
Model.all(callback)
Get all models (static method)
Model.find(id, callback)
Find a model (static method)
Model.createDesignDoc(name, mapFunction, callback)
Create a design document and store it in PouchDB instance
Model.query(name, options, callback)
Query view named name, with PouchDB options, returning callback with an error
or array of result docs
model.save([options], callback)
Save the model (instance method)
model.remove([options], callback)
Remove the model (instance method)
Caveats
modella-pouchdb attaches a _rev attribute to every model. This attribute is used and managed by the adaptor when updating documents in the database. Note that if you modify this attribute on your models you will most likely encounter errors.
Test
npm install && make testLicense
MIT
