при использовании библиотеки aiogram выдаёт ошибку

Рейтинг: -1Ответов: 2Опубликовано: 05.02.2023

делаю просто лёгкого бота на aiogram, возникает такая ошибка:

Traceback (most recent call last):
  File "main.py", line 18, in <module>
    @bot.callback_query_handler(func=lambda message: message.text=="button")
AttributeError: 'Bot' object has no attribute 'callback_query_handler'

можно, ли как-нибудь поправить?

вот полный код:

from aiogram import Bot, types
from aiogram.dispatcher import Dispatcher
from aiogram.utils import executor

from config import TOKEN

bot = Bot(token=TOKEN)
dp = Dispatcher(bot)


@dp.message_handler(commands=['start'])
async def process_start_command(message: types.Message):
  await message.reply("Нажми на кнопку ниже!!")


@user_dicts := {}

@bot.callback_query_handler(func=lambda message: message.text=="button")
def button_1(message):
    if not user_dicts.get(message.from_user.id):
        user_dicts[message.from_user.id] = 1
    else:
        user_dicts[message.from_user.id] += 1
        
    bot.send_message(
        message.chat.id, 
        f"Кнопка нажата {user_dicts[message.from_user.id]} раз.")


@bot.message_handler(commands=['start'])
def send_welcome(message):
    bot.send_message(
        message.chat.id,
        "text",
        reply_markup=InlineKeyboardMarkup().add(
            InlineKeyboardButton('Кнопка', callback_data='button')))

Ответы

▲ 0

Замените @bot.callback_query_handler на @dp.callback_query_handler

И что вообще значит @user_dicts := {} ???

Пожалуйста, почитайте документацию aiogram и Python

▲ -1
@dp.callback_query_handler
@dp.message_handler