npm.io
0.0.2 • Published 8 years ago

mongoose-plugin-compose

Licence
MIT
Version
0.0.2
Deps
0
Vulns
0
Weekly
0

Build Status Coverage Status

Mongoose Plugin Compose

Defer commitment to the ORM. Separate your domain models from your persistence models.


const compose = require('mongoose-plugin-compose').default;

class Animal {
  speak(){
    console.log(this.name)
  }
}

const Cat = mongoose.model('Cat', new mongoose.Schema({
  name: String
}));

Cat.schema.plugin(compose(Animal));

const cat = new Cat({ name: 'fido'});

cat.speak(); // fido