@AlexaAioGram

Почему call.data не откликается?

@dp.callback_query_handler()
async def randws(call: CallbackQuery):
    if call.data == 'amf':
        await call.message.answer('hello')


всё проверял по 1000 раз, калл-бэк в инлайн кнопке правильный, но когда нажимаю на кнопку, не возвращает 'hello', помогите пожалуйста те кто разбираются.
  • Вопрос задан
  • 53 просмотра
Решения вопроса 1
@Bl4ckm45k
У вас хендлер @dp.callback_query_handler(text='rand') принимает text, который нужен для обычных кнопок, после нажатия которых отправляется сообщение от пользователя.

Например вы можете это реализовать так:
@dp.callback_query_handler(lambda c: c.data == 'amf')
async def randws(call: CallbackQuery):
    await call.message.answer('gggg')


Чтобы не создавать кучу хендлеров на каждый callback советую ознакомиться с callback_data_factory:
Примеры:
callback_data_factory_simple
callback_data_factory
Документация:
callback_data
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы