MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Warum funktioniert mein collection.find() nicht in Meteor, aber in Robomongo?

Es sieht so aus, als ob Sie versuchen, Felder in Ihrem find anzugeben , was Sie so machen können:

var options = {
  fields: {
    'profile.name': 1,
    'profile.description': 1,
    'profile.picture': 1,
    'profile.website': 1,
    'profile.country': 1
  }
};

Meteor.users.find({_id: {$in: myArray}}, options);

Wenn dies jedoch in einer Veröffentlichungsfunktion verwendet wird, empfehle ich dringend empfehlen, nur Felder der obersten Ebene wie folgt zu verwenden:

Meteor.users.find({_id: {$in: myArray}}, {fields: {profile: 1}});

Weitere Einzelheiten dazu finden Sie unter diese Frage .

Für Ihre zweite Frage können Sie die von einem Cursor zurückgegebenen Dokumente anzeigen, indem Sie fetch aufrufen darauf. Zum Beispiel:

console.log(Posts.find({_id: {$in: postIds}}).fetch());