#mysql #python-3.x #discord.py #mysql-python
Вопрос:
Я запускаю команды, которые устанавливают мой канал приветствия, и он добавляет канал в базу данных нормально (я напечатал результат при добавлении идентификатора в базу данных для проверки). Добавление идентификатора гильдии и приветственного сообщения также, похоже, подойдет. Но когда я добавляю on_member_join
событие и запускаю код для получения приветственного сообщения и канала, он не отправляется ни на один канал. Он не выдает никаких сообщений об ошибках, поэтому я понятия не имею, что не работает. Если бы кто-нибудь мог помочь, я был бы признателен. Забыл упомянуть, что я использую MySQL в качестве базы данных.
Событие on_member_join:
@commands.Cog.listener()
async def on_member_join(self, member):
db = mysql.connector.connect(**config)
cursor = db.cursor()
cursor.execute(f'SELECT channel_id FROM welcome WHERE guild_id = {member.guild.id}')
result = cursor.fetchone()
member_mention = member.mention
member_name = member.name
server = member.guild
if result is None:
return
else:
cursor.execute(f'SELECT message FROM welcome WHERE guild_id = {member.guild.id}')
result1 = cursor.fetchone()
channel = self.bot.get_channel(id=int(result[0]))
await channel.send(str(result1[0]))
print(result)
print(result1)
Комментарии:
1. Пришлось разрешить намерения для всех заинтересованных