MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Consultas JS do Mongoose todas voltando nulas ou vazias


mongoose normalizará o nome da coleção para minúsculas e pluralizadas. Portanto, você deve inserir em db.samplecollections em vez de db.sampleCollection . (Observe a diferença da letra c e s aqui).

para testá-lo:
s = new sampleCollection({sampleField: 'hello'}); // creates a new record
s.save(function(err) { 
  sampleCollection.find({ } , function (err, items) {
      console.log(items); 
      console.log(err); 
      items.forEach( function(item) {
          console.log(item); 
      });
  });
});

e imprime corretamente:
[ { sampleField: 'hello', _id: 4f28ab4cc9e58f710a000001 } ]
null
{ sampleField: 'hello', _id: 4f28ab4cc9e58f710a000001 }

então no shell do mongo:
> show collections
samplecollections          //<<<<<<<<<<<<<< It's all lowercase and pluralized
system.indexes

> db.samplecollections.find()
{ "sampleField" : "hello", "_id" : ObjectId("4f28ab4cc9e58f710a000001") }