我有两个Mongoose集合“ File”和“ FileShare”。架构详细信息如下
var FileSchema = new mongoose.Schema({
name: { type: String},
shares: [ { type: Schema.Types.ObjectId, ref: "FileShare" } ]});
var FileShareSchema = new mongoose.Schema({
_id: Number,
user: { type: String }});
用于文件收集的样本数据
name shares
================================
Document1.txt [1,2]
Document2.txt [1]
Document3.txt [2]
Document4.txt []
用于FileShare收集的样本数据
_id user
========================
1 John
2 Raj
我想编写一个查询来获取与用户共享的列表文件。并且还需要使用查询来处理分页。
扩展结果
对于John来说,用户应该获得Document1.txt,Document2.txt
并且用户Raj应该获得Document1.txt,Document3.txt
File.find({})
.populate('FileShare')
.sort({'_id': 1})
.skip(0).limit(25)
.exec(function (err, files) {
res.send(files);
});
请告诉我,有什么方法可以使用猫鼬查询来获得此结果。