0.1.4 • Published 11 years ago
modella-leveldb v0.1.4
LevelDB
Installation
npm install modella-leveldbExample
var model = require('modella');
var level = require('modella-leveldb')('./mydb');
var uid = require('uid');
var User = model('user')
.attr('id')
.attr('name')
.attr('email')
.attr('password');
User.use(level);
/**
* Initialize
*/
var user = new User;
user.id(uid(6))
.name('matt')
.email('mattmuelle@gmail.com')
.password('test');
user.save(function(err) {
console.log(user.toJSON());
});API
Level(path|db, options)
Initialize leveldb with a path to the database. If path doesn't exist, it will be created. options will be passed through to levelup
Alternatively, you can pass your own level db instance in.
Model.index(index, opts)
Create a secondary index using leveldex. You may ensure that key is unique by passing unique : true in opts.
User.index('email', { unique: true });Model.all(options, fn)
Get all models (static method)
Model.find(id|object, options, fn)
Find a model (static method).
If you provide a secondary index, you can search by that key:
Model.find({ email: 'hi@lapwinglabs.com' } , fn);model.save(options, fn)
Save the model (instance method)
model.remove(options, fn)
Remove the model (instance method)
All options will be passed through to levelup.
License
MIT