我有这个猫鼬模式:
UserSchema = new db.Schema({
objA : [objA.Schema],
objB : [objB.Schema],
objC : [objC.Schema],
objD : [objD.Schema],
friends : [db.Schema.Types.ObjectId]
}
我使用此查询根据对象的内容获取_id
s 内部:objA, objB, objC and objD
friends
user.Model
.find({
_id : {
$in : friends
}
})
.select('-_id objA._id objB._id objC._id objD._id') //get the _ids
.exec(function(err, results) {
console.log(results);
});
results
节目:
[ { objD: [ { _id: 52395c8cee93d72344000009 } ],
objC: [],
objA:
[ { _id: 52395a408078b3f42200000d },
{ _id: 52395cc1ee93d7234400000c } ],
objB: [ { _id: 52395d06ee93d7234400000f } ] },
{ objD: [],
objC: [],
objA: [ { _id: 52395a248078b3f422000009 } ],
objB: [] } ]
一切都按预期正常工作。但我的目标是将 objA、B、C 和 D 的所有 _id 放在一个容器中(可能是一个数组、对象......我不知道),在其中我可以轻松地按时间戳对它们进行排序并用它们填充 UI。我认为有一个非常方便的方法。有任何想法吗?TIA