Задать вопрос
@xpril

Как исправить ошибку, при создании новой таблицы в bot.event?

У меня в @bot.event стоит при получении сообщения проверка на аккаунт, и если аккаунта нет, то он создаётся.
Но тут появилась ошибка:
Ignoring exception in on_message
Traceback (most recent call last):
  File "C:\Users\User\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\client.py", line 377, in _run_event
    await coro(*args, **kwargs)
  File "c:\Python\bot_discord\bot_ds.py", line 43, in on_message
    qwe.execute(''' SELECT user_id FROM user_table WHERE user_id=? ''', [user_id])
    ^^^^^^^^^^^
AttributeError: 'Command' object has no attribute 'execute'


Вот сам код:
@bot.event
async def on_message(message):
    global user
    user = message.author
    if message.author.bot:
        return
    await bot.process_commands(message)
    user_id = message.author.id
    qwe.execute(''' SELECT user_id FROM user_table WHERE user_id=? ''', [user_id]) #Здесь возникает ошибка
    if qwe.fetchone() is None:
        qwe.execute(''' INSERT INTO user_table(user_id) VALUES(?) ''', [user_id])
        db.commit()
        print(123)
    else:
        None


Как решить?
  • Вопрос задан
  • 44 просмотра
Подписаться 1 Простой 2 комментария
Решения вопроса 1
@xpril Автор вопроса
Решение нашёл сам.
Из-за того, что я сделал переменную глобальной,
global user
мне и выдавало ошибку.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы