javascript-猫鼬一次查询所有子文档

这是我的计划,我想做一个查询并获取所有文档和所有对象的文档.

var CureSchema = mongoose.Schema({

            id:         Number,
            therapist:  {type:mongoose.Schema.Types.ObjectId, ref:'User'},
            supervisor: {type:mongoose.Schema.Types.ObjectId, ref:'User'},
            parents:    {type:mongoose.Schema.Types.ObjectId, ref:'User'},
            children:   {type:mongoose.Schema.Types.ObjectId, ref:'Child'},
            startate :  Date,
            endDate :   Date,
            deleted:    Boolean,
    });

    var Cure = mongoose.model('Cure', CureSchema); 

如果我使用普通查询,则在输出中有objectId.

{

06001

}

解决方法:

从技术上讲,在mongodb中使用一个查询是不可能的,因为文档属于三个不同的集合.猫鼬可能必须执行五个查询(尽管我认为三个应该足够,但我不确定猫鼬有多聪明).

但是,如果您真正要问的是如何仅使用一条猫鼬指令来获取子文档,则应查看populate().

Cure.find()
  .populate('therapist')
  .populate('supervisor')
  .populate('parents')
  .populate('children')
  .exec(resultHandler);
上一篇:javascript – 在填充mongoose后查找


下一篇:javascript – 使用mongoose在MongoDB中批量插入