0

我的日志记录命令需要一个通道来发送消息,我使用>logging #channel-here命令执行此操作,它存储在 better-sqlite3 上,我的问题是我不确定如何读取内容并将其转换为通道。 日志记录

我已经为此工作了几天,并且尝试了几种不同的方法,这是我最近的尝试

  const id = sql.prepare(`SELECT channel FROM logging WHERE guildid = ${message.guild.id};`).get();
  const logs = client.channels.get(id);
  if (!logs) return;
  logs.send(`A message was deleted`);

const logs =如果 guildid 记录与删除消息的记录匹配,则需要=您在频道记录中看到的频道 ID。

4

1 回答 1

0

而不是保存频道提及,您应该保存频道 ID。 <#channel-id>用于提及频道,但discord.js <guild>.channels.get()仅接受 ID。因此,您应该只将 Channel Id 存储在数据库中,在您的代码中供您>logging #channel-here使用const mentionedchannel = message.mentions.channels.first(); ,然后在您的数据库中写入mentionedchannel.id,然后您.get()应该可以工作!

于 2019-01-09T15:26:37.253 回答