我有一个流星集合,想要得到第一个项目的ID.查询有一个限制1子句,我只想要第一个项目的id(如果有的话).我无法弄清楚如何编码.
这是我的查询.
var myGames = Games.find(
{
game_minutes: {$gt: MinutesSinceMidnightNow},
court_id: court,
game_date: {$gt: lastMidnight}
},
{
sort: { "game_minutes": 1},
limit: 1
});
Run Code Online (Sandbox Code Playgroud)
然后,如果我迭代结果,我的应用程序将进入比赛.
myGames.forEach(function (game) {
gameId = game._id;
console.log('gameId: ' + gameId );
});
Run Code Online (Sandbox Code Playgroud)
我知道查询正在运行并且当前正在返回记录,但我无法弄清楚如何访问记录.
find()返回一个游标.而不是使用将从光标获取所有数据到数组的forEach用途fetch.所以在你的情况下:
var id = myGames.fetch()[0]._id;
Run Code Online (Sandbox Code Playgroud)
(当您确定数据存在时.否则检查数组是否为空)