【问题标题】:PostgreSQL query not inserting values forEachPostgreSQL 查询不插入值 forEach
【发布时间】:2018-03-14 22:41:57
【问题描述】:

我正在尝试将 Discord 聊天机器人正在处理的每个 Guild 的 ID 和名称放入 PGSQL 数据库表中。我正在使用Discord.js module 及其client.guilds(这是一个JS Map 对象)和forEach 方法来重复每个服务器名称和ID 的每个PGSQL 查询。在我运行进程后,我正在使用 PGadmin 呈现表(我通过部署我的机器人正在运行的 Heroku 应用程序来完成此操作)写在我的 GitHub 文件中的查询(我的 github 链接到 heroku deploy) .

这是我的代码:

client.guilds.forEach(function (value, key) {
  con.query('INSERT INTO Servers (name, id) VALUES (\'' + value.name.toString() + '\', ' + key.valueOf() + ');', (err, res) => {
    console.log(res);
    console.log(err);
  });
});

我的问题是,在我部署了我的应用后,每个不和谐的服务器名称和 ID 都不会插入到各自的列中。

【问题讨论】:

    标签: node.js postgresql heroku discord


    【解决方案1】:

    我已通过在机器人登录 Discord 后插入此代码来解决我的问题。由于机器人在与 Discord API 连接之前无法检索任何信息,因此首先不会加载查询,因为客户端无法访问公会信息。 我决定把它放在我的 client.ready 事件中,它奏效了!

    client.on('ready', () => {
      console.log(`Logged in as ${client.user.tag}!`);
      client.guilds.forEach(function (value, key) {
        con.query('INSERT INTO Servers (name, id) VALUES (\'' + value.toString() + '\', ' + key.valueOf() + ');', (err, res) => {
          console.log(res);
          console.log(err);
        });
      });
      con.end();
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-05-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-14
      • 1970-01-01
      • 1970-01-01
      • 2014-05-10
      相关资源
      最近更新 更多