2015-02-08 59 views
1

我有這樣的模式:Mongoose.js:是否有可能通過條件填充數組項目?

var PostSchema = new Schema({ 
    by: { type: mongoose.Schema.Types.ObjectId, ref:'user' }, 
    body: String, 
    likes: [{ by: { type: mongoose.Schema.Types.ObjectId, ref:'user' }, isAnonymous: { type: Boolean, default: false}}], 
}); 

此架構支持匿名喜歡。

我的問題:有沒有一種方法來填充'likes'數組中的項目,其中isAnonymous等於false?

回答

1

是的,有

opts={ 
     path: 'likes', 
     match: { 
       isAnonymous:false 
     }, 
     select: '<fields to be fetched>' 
}; 

Post 
    .find({}) 
    .populate(opts) 

docs

help

相關問題