我如何在NodeJS中引用我的MongoDB数据,然后将其添加到Discord.JS消息中?
我正在尝试从MongoDB数据库中提取数据数组,并且代码很生锈(如果可以做得更好,或者缺少某些东西或错误,我确实希望对其进行一些更正,但是应该获取数组,找到“用户”和“描述”对象,然后将它们放入discord.js消息中。
我已经尝试过分别引用对象,使它们成为字符串,解析数据,但是我仍然找不到解决方法。这是我一直在使用的代码。
module.exports.run = async (bot, message, args) => {
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb+srv://sbss1111:[email protected]/test?retryWrites=true&w=majority';
const assert = require('assert');
try {
function remindersChecker() {
let mongoClientPromise = MongoClient.connect(url, function (err, client) {
const db = client.db("reminders");
let date = new Date().getTime();
let now = Math.floor(Date.now() / 1000);
db.collection("reminders").find().toArray(function (err, result) {
let data = JSON.toObject();
console.log(data);
let user = data.author
let description = data.description
console.log(user);
user.send("I have a reminder for you! " + description)
})
})
}
remindersChecker()
} catch(err) {
catchError()
}
}}
module.exports.help = {
name: "check"
}
(该命令是临时的,稍后将在setTimeout上使用,因此该函数不仅仅是普通的旧代码。)
谢谢!我希望我能尽快获得帮助。
回答如下:也许一些更多的信息对于更好地理解问题是非常有用的。从我在这里看到的,您正在从数据库中接收一个对象并将其转换为数组:
db.collection("reminders").find().toArray(function (err, result) {...
现在数组实际上是从回调获得的结果,并且您根本没有使用它,您可能必须对此进行迭代。
加上我记得我曾经写过
...find({})..
要在数据库中搜索SQL中的SELECT * FROM。也许这也会有所帮助。
希望这会有所帮助。
我如何在NodeJS中引用我的MongoDB数据,然后将其添加到Discord.JS消息中?
我正在尝试从MongoDB数据库中提取数据数组,并且代码很生锈(如果可以做得更好,或者缺少某些东西或错误,我确实希望对其进行一些更正,但是应该获取数组,找到“用户”和“描述”对象,然后将它们放入discord.js消息中。
我已经尝试过分别引用对象,使它们成为字符串,解析数据,但是我仍然找不到解决方法。这是我一直在使用的代码。
module.exports.run = async (bot, message, args) => {
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb+srv://sbss1111:[email protected]/test?retryWrites=true&w=majority';
const assert = require('assert');
try {
function remindersChecker() {
let mongoClientPromise = MongoClient.connect(url, function (err, client) {
const db = client.db("reminders");
let date = new Date().getTime();
let now = Math.floor(Date.now() / 1000);
db.collection("reminders").find().toArray(function (err, result) {
let data = JSON.toObject();
console.log(data);
let user = data.author
let description = data.description
console.log(user);
user.send("I have a reminder for you! " + description)
})
})
}
remindersChecker()
} catch(err) {
catchError()
}
}}
module.exports.help = {
name: "check"
}
(该命令是临时的,稍后将在setTimeout上使用,因此该函数不仅仅是普通的旧代码。)
谢谢!我希望我能尽快获得帮助。
回答如下:也许一些更多的信息对于更好地理解问题是非常有用的。从我在这里看到的,您正在从数据库中接收一个对象并将其转换为数组:
db.collection("reminders").find().toArray(function (err, result) {...
现在数组实际上是从回调获得的结果,并且您根本没有使用它,您可能必须对此进行迭代。
加上我记得我曾经写过
...find({})..
要在数据库中搜索SQL中的SELECT * FROM。也许这也会有所帮助。
希望这会有所帮助。