2015-06-12 38 views
0

對不起,如果這非常簡單mongodb具有彙總$ concat的文檔,但是我可能會誤解它的用途。我試圖結合我的名字和姓氏屬性。Concat查詢選項mongoose中的兩個文檔屬性

姓氏,名字

我也將在年底增加中間最初,但我並不想使事情變得複雜。

var query = model.find(); //for simplicity I'm selecting all of them 
query.aggregate({name:{$concat:['$LastName', ', ', '$FirstName']}}) 
query.exec(function(err, docs){ 
    if(err) throw err; //trying to understand why this isn't working 
}) 

這會使獲取此信息的路由返回狀態500,但不會引發錯誤。我是否以錯誤的方式去做這件事。實際的 代碼將輸出限制爲1000,因爲數據庫中有超過200,000個條目,並且如果貓鼬可以爲我完成某些工作,將它們全部循環併合並它們似乎有點愚蠢。

回答

0

我意識到我正在使用聚合錯誤。相反,我發現我可以使用虛擬來做同樣的事情。

通過修改我的架構

var s = new Schema({//someschema},{ 
    toObject:true, 
    toJSON:true 
}); 
s.virtual('FullName').get(function(){ 
    return this.LastName + ', ' + this.FirstName; 
}); 

然後我我進行查詢後無骨料可致電我 doc.FullName //姓,

謝謝你去@JohnnyHK他的回答在Can't get Mongoose virtuals to be part of the result object

相關問題