2016-11-30 16 views

cevap

6

Yani, kullanıcı, Blog, Yorum ve Uyarı modellerinin tümünün uygulamada herhangi bir fark yaratmadan paylaştığı tek bir statik yönteminiz var mı?

Mongoose'da birden çok farklı modele davranış uygulamanın gerçek yolu eklentilerden geçiyor ve global bir eklenti yapabilirsiniz. Geleneksel sözdizimine sadık kalacağım, ancak eğer ES6 ithalatını kullanmak istiyorsan ve ihracatı özgür hissediyorsun. şöyle projenizde tüm modellere alternatif olarak

userSchema.plugin(require('./plugins/echo')); 

Veya:

// somewhere in your app startup code 
var mongoose = require('mongoose'); 
var echoPlugin = require('./models/plugins/echo'); 

mongoose.plugin(echoPlugin); 
+1

http: öylesine gibi tek şemaya uygulanabilir bir eklenti tanımlar

// ./models/plugins/echo.js module.exports = function echoPlugin(schema, options) { schema.statics.echo = function(){ console.log('Echo'); } } 

// mongoosejs.com/docs/plugins.html – Matt