1
以我分貝顯示的結果,每一個用戶無論是創建的影片或促成了電影或兩者。貓鼬:排序 - 具有參數等於[值]第一
我想從某個用戶參與(創建或提供)的數據庫中提取所有文檔。
但我想結果,使得排序:
- 電影,他都創造和貢獻露面第一。
- 電影,他創造現身第二
- 電影,他只參加了演出同比去年。
這裏是我的電影模式:
var movieSchema = mongoose.Schema({
_creator: {type: mongoose.Schema.Types.ObjectId, ref: 'User'},
movieName: String,
credits: [{
who: {type: mongoose.Schema.Types.ObjectId, ref: 'User'},
what: {String} //writer,director,composer, etc.
}]
});
這是我的代碼檢索影片列表,但我不知道如何根據我的標準排序。
Movie
//find movies that user with id [id] either created or was credited in(participated)
.find({$or:[ {'_creator':id}, {'credits.who':id}]})
.exec(function (err,movies) {
})
你能幫忙嗎?
你應該能夠使用'movies.sort做到這一點(函數(MOVIE1 ,movie2){m1 = 0如果用戶創建movie1 m1 ++如果用戶contrib movie1 m1 ++並且對於movie2與m2相同然後比較m1和m2返回m1 - m2;});'希望它有意義:) – Molda
它有意義,我不確定如何在實踐中實施它。你能否在答案中提供代碼片段? –