【发布时间】:2016-12-17 06:22:54
【问题描述】:
我正在使用 mongoose ODM 并且有一个如下所示的架构:
var banSchema = new Schema({
userid: { type: String, required: true, unique: true },
name: String,
groupid: String,
reason: String,
timestamp: Date
});
我想从集合中的所有文档中输出每个用户 ID。我正在使用此查询来获取用户 ID 对象。但是我似乎无法自动获取完整列表。我必须手动输入对象编号,如下所示:
bot.onText(/\/sync/i, function (msg) {
var fromId = msg.from.id;
var chatId = msg.chat.id;
if (fromId == config.sudo) {
console.log('Sudo Confirmed And Authorized!');
Ban.find({}, function (err, obj) {
console.log(obj[0].userid); // Returns A Single ID
console.log(obj[1].toObject().userid); // Returns a different ID
bot.sendMessage(chatId, obj[1].toObject().useridid);
});
} else {
console.log('Someone Is Trying To Act Like Sudo! *sigh*');
bot.sendMessage(chatId, 'You Are Not A Mod!');
}
});
然而,这并没有返回我想要的完整的 id 列表。我该如何解决这个问题?
上面的代码是一个电报机器人,它在/sync命令上应该返回一个包含集合中所有ID的消息。
Telegram 机器人 API 限制
由于 API 限制,整个输出应包含在一条消息中。
【问题讨论】:
标签: arrays node.js mongodb object mongoose