sql >> Databáze >  >> NoSQL >> MongoDB

Všechny dotazy Mongoose JS se vracejí prázdné nebo prázdné

mongoose normalizuje název kolekce na malá písmena a množné číslo. Proto byste měli vložit do db.samplecollections místo db.sampleCollection . (Všimněte si rozdílu v písmenu c a s zde).

vyzkoušet:

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

a správně vytiskne:

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

pak v mongo shell:

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

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


  1. Jak třídit v mangoose?

  2. Nelze zachovat stav transakce, protože chybí kolekce transakcí relace

  3. Zkopírujte databázi v Mongoose

  4. Jak mohu použít agregační operátory v $match v MongoDB (například $year nebo $dayOfMonth)?