2016-01-21 64 views
0
var UserSchema=new Schema({ 
     username: { 
      type: String, 
      required: 'UserName is required' 
     } 
    }); 

var PostingSchema=new Schema({ 

     creator: { 
      type: Schema.ObjectId, 
      ref: 'User', 
      required:true 
     } 
    }); 

我想檢索給定用戶名的發佈。我正在以下面的方式做,這是行不通的。貓鼬:如何查詢具有類型參考屬性的條件的模型

Posting 
      .find({ 'creator.username': req.params.username }) 
      .populate('creator', 'firstName lastName fullName username profile_pic') 
      .exec(function(err, postings){ 
       if (err){ 
        res.status(501).json({ error: err}); 
       } else { 
        res.json(postings); 
       } 
      }); 

我得到了空結果數組。查詢條件可能有問題。如何對參考對象應用條件。有人可以糾正這個嗎?

回答

0

參考Query populate

.populate({ 
     path: 'creator', 
     match: { username: req.params.username }) 

或者

.populate('creator', null, { username: req.params.username })