收集:
docs:
_id
name
代码:
names = Docs.findOne(id).name for id in doc_ids
但我想将findOne查询并行发送。
答案 0 :(得分:2)
可能更容易的替代方法是使用$in
并对数据库本身执行并行查询。以下是CoffeeScript中的一个示例:
ids = ['abc123', 'def456', 'hij789']
names = (doc.name for doc in Docs.find({_id: $in: ids}, {fields: name: 1}).fetch())
答案 1 :(得分:1)
您可以将查询限制为某些字段子集,例如
names = _.pluck(Docs.find({_id:{$in:doc_ids}}, {
fields: {name:1}
}).fetch(), 'name');