Frage

Collection:

docs:
  _id
  name

Code:

names = Docs.findOne(id).name for id in doc_ids

But I would like the findOne queries to be sent off in parallel.

War es hilfreich?

Lösung

A possibly easier alternative is to use $in and do the parallel query on the database itself. Here's an example in CoffeeScript:

ids = ['abc123', 'def456', 'hij789']
names = (doc.name for doc in Docs.find({_id: $in: ids}, {fields: name: 1}).fetch())

Andere Tipps

You can restrict your query to a certain subsets of fields, e.g.

names = _.pluck(Docs.find({_id:{$in:doc_ids}}, {
  fields: {name:1}
}).fetch(), 'name');
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top