2013-07-26 86 views
0

排序嵌套文件這是我的架構:在MongooseJS

var Review = new Schema({ 
    user: {type: ObjectId, ref:'User'}, 
    lastModified: {type: Date, default: Date.now } 
}); 

var Subject = new Schema({ 
    name: String, 
    review: [Review], 
    ... 
}); 


The query will return all the subjects with review from a user. 

{'review.user': id} 是否有可能基於review.lastModified排序結果?

Subject.find({'review.user': id}).select('name').sort('???').exec(function(err, subjects){ 
    if (err) return res.json(error); 

    console.log('subject', subjects); 
}); 
+0

假設文檔是Subject1 [[review1(10),review(2)]],Subject1 [[review1(3),review(4)]],我將使用一個數字作爲簡化日期,所以你的預期結果是什麼?因爲Subject包含多個日期,您只能根據一個日期對它們進行排序,所以我認爲它沒有意義。 – zsong

+0

我的意思是在評論中的日期 –

+0

'評論:[評論]'意味着一個嵌入的'評論'文檔陣列,所以@sza說,這沒有什麼意義。 – JohnnyHK

回答

1

您無法使用MongoDB在文檔中進行排序。文檔內的排序必須在應用程序級完成。