2012-02-22 65 views
1

我有模型,虛擬參考用戶模型。如何在不調用用戶模型的情況下獲取用戶名,也可以從差旅遊覽中打印多個用戶。 如何實現虛擬參考DBRef

//console.log(user);
打印多個用戶而不是特定旅行。

 

    var TourSchema = new Schema({ 
     user:{ type: Schema.ObjectId, ref: 'User' }, 
     tour:String, 
     tour_slug:String, 
     date:{type:Date, default: Date.now}, 
     tour_date:Date, 
    }); 

    TourSchema 
     .virtual("who") 
     .get(function(){ 
      User.findOne({'fb._id':this.user,function(err,user){ 
       if(err)console.log(err); 
       else 
        //console.log(user); 
        return user.full; 
      }); 

     }); 

回答

0

如果你不想開始一個新的查詢,你可以填充用戶,如果你查詢旅遊對象。

Tour.findOne().populate("user", "name").exec(function(err,user){ 
    if(err) console.log(err); 
    else 
     //console.log(user); 
     //user.full; 
});