Чтение содержимого БД для channel.id
Моей команде регистрации нужен канал для отправки сообщений, я делаю это с >logging #channel-here
Команда, он хранится на лучше-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 совпадает с той, в которой сообщение было удалено.
1 ответ
Вместо сохранения упоминания каналов, вы должны сохранить идентификатор канала.<#channel-id>
используется для упоминания канала, но discord.js
<guild>.channels.get()
, берет только удостоверение личности. Таким образом, вы должны хранить только идентификатор канала в базе данных, в вашем коде для >logging #channel-here
просто используйте const mentionedchannel = message.mentions.channels.first();
а затем в вашу БД просто напишите mentionedchannel.id
тогда ваш .get()
должно сработать!