MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Les requêtes Mongoose JS reviennent toutes nulles ou vides

mongoose normalisera le nom de la collection en minuscules et au pluriel. Par conséquent, vous devez insérer dans db.samplecollections au lieu de db.sampleCollection . (Remarquez la différence de la lettre c et s ici).

pour le tester :

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); 
      });
  });
});

et il imprime correctement :

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

puis en mongo shell :

> show collections
samplecollections          //<<<<<<<<<<<<<< It's all lowercase and pluralized
system.indexes

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