Запускается бот, отображаются кнопки, щелкаю по одной из инлайн кнопок и ничего не происходит. Подскажите пожалуйста как вывести результат по callback_data полученный при нажатии на кнопку.
from aiogram.types import InlineKeyboardMarkup, InlineKeyboardButton, CallbackQuery
from aiogram import F, Router, types
router = Router()
def get_popular_address_ikb(pop_address) -> InlineKeyboardMarkup:
buttons_streets = [f"{pop_address['pop1'][1]} {pop_address['pop1'][2]}", f"{pop_address['pop2'][1]} {pop_address['pop2'][2]}", f"{pop_address['pop3'][1]} {pop_address['pop3'][2]}", f"{pop_address['pop4'][1]} {pop_address['pop4'][2]}", f"{pop_address['pop5'][1]} {pop_address['pop5'][2]}", f"{pop_address['pop6'][1]} {pop_address['pop6'][2]}"]
popular_address_ikb = [
[
InlineKeyboardButton(text=buttons_streets[0], callback_data='pop1'),
InlineKeyboardButton(text=buttons_streets[1], callback_data='pop2')
],
[
InlineKeyboardButton(text=buttons_streets[2], callback_data='pop3'),
InlineKeyboardButton(text=buttons_streets[3], callback_data='pop4')
],
[
InlineKeyboardButton(text=buttons_streets[4], callback_data='pop5'),
InlineKeyboardButton(text=buttons_streets[5], callback_data='pop6')
]
]
return InlineKeyboardMarkup(inline_keyboard=popular_address_ikb)
@router.callback_query(F.data.startswith('pop'))
async def callback_handler(callback_data: CallbackQuery):
await callback_data.answer()
print(callback_data.data)
if callback_data.data.startswith('pop'):
print(f"Пользователь выбрал адрес {callback_data.data}")
async def callback_handler(callback_data: CallbackQuery):
await callback_data.answer()
print(callback_data.data)
if callback_data.data.startswith('pop'):
print(f"Пользователь выбрал адрес {callback_data.data}")
router.callback_query.register(callback_handler)