我已经离开我的代码超过一年并运行了NPM安装,因为它显然已经改变了:)
我的查询
var mongoose = require('mongoose'),
Clubs = mongoose.model('Clubs');
getNorsemanClubs: function(passData){
return new Promise(function (resolve) {
Clubs.find({norseman:true}, 'name teamID date norseman eleven').sort({ eleven : 'asc'})
.then(function(clubs){
console.info(clubs);
passData.clubs = clubs;
resolve(passData);
});
})
}
console.info(俱乐部);输出
在这里你可以看到它正在返回模型,而不是俱乐部的结果。
我的模特
var mongoose = require('mongoose')
, Schema = mongoose.Schema;
/**
* User Schema
*/
var ClubsScheme = new Schema({
name: String,
teamID: { type: String, default: null },
date: { type: Date, default: Date.now},
norseman: {type: Boolean, default: false},
eleven: Number
})
mongoose.model('Clubs', ClubsScheme);
如何让它返回俱乐部列表?
俱乐部桌上摆满了比赛数据。但我以前从'name teamID date norseman eleven'
获得了回报,现在我得到了:\
**使用exec()
答案 0 :(得分:1)
您需要执行find
mongoose查询方法,方法是使用exec()
方法追踪您的查询,以便在您的列表值已解决时返回承诺,因此请更改以下一行:
Clubs.find({norseman:true}, 'name teamID date norseman eleven').sort({ eleven : 'asc'})
为:
Clubs.find({norseman:true}, 'name teamID date norseman eleven').sort({ eleven : 'asc'}).exec()