mikkhalev
@mikkhalev

Что может исправить 'Bot' object has no attribute 'message_handler'?

Пишу бота, учусь работать с базой данных. На данный момент цель кода такова: Пользователь вводит команду, и бот добавляет id в базу.

# инициализируем бота
bot = Bot(token=config.TOKEN)
dp = Dispatcher(bot)

# инициализируем соединение с БД
db = SQLighter('database.db')

@dp.message_handler(commands=['admins'])
async def subscribe(message: types.Message):
    if(not db.subscriber_exists(message.from_user.id)):
        # если юзера нет в базе, добавляем его
        db.add_subscriber(message.from_user.id)
    else:
        # если он уже есть, то просто обновляем ему статус подписки
        db.update_subscription(message.from_user.id, True)
    
    await message.answer("Вы успешно добавлены в базу")
 
@bot.message_handler(commands=['start'])
def welcome(message):
      .   .   .


После запуска, в консоли появляется ошибка:
Traceback (most recent call last):
  File "bot.py", line 31, in <module>
    @bot.message_handler(commands=['start'])
AttributeError: 'Bot' object has no attribute 'message_handler'


Из-за чего это может происходить и как избежать ошибки чтоб все работало?
  • Вопрос задан
  • 2826 просмотров
Пригласить эксперта
Ответы на вопрос 1
@To_Anton
@dp.message_handler та @bot.message_handler різні речі. Пиши @dp.message_handler
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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