MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Mongoose di sola lettura senza schema

Se utilizzi Mongoose solo per leggere da una raccolta, puoi lasciare vuota la definizione dello schema.

Quindi, se avessi una raccolta di sola lettura denominata test , qualcosa del genere funzionerà:

var Test = mongoose.model('Test', new Schema(), 'test');
Test.findOne({name: 'John'}, function(err, doc) { ... });

Oppure, per prestazioni migliori, includi lean() nella tua catena di query se non hai bisogno di nessuna delle funzionalità dell'istanza del modello:

Test.findOne({name: 'John'}).lean().exec(function(err, doc) { ... });

Se non usi lean() è necessario accedere alle proprietà del documento utilizzando get metodo; ad esempio:

doc.get('name') // instead of doc.name