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

Как обрабатывать callback handler в aiogram 3?

столкнулся с ошибкой при смене aiogram'a на новую версию

Ошибка
aiogram.exceptions.UnsupportedKeywordArgument: Passing any additional keyword arguments to the registrar method is not supported.
This error may be caused when you are trying to register filters like in 2.x version of this framework, if it's true just look at correspoding documentation pages.
Please remove the {'text'} arguments from this call.


А вот сам код

@dp.callback_query(text='first')
    async def first(callback_query: types.CallbackQuery):
        await callback_query.message.answer('Хорошо, приступим ко второму вопросу.')
  • Вопрос задан
  • 8410 просмотров
Подписаться 1 Простой 1 комментарий
Пригласить эксперта
Ответы на вопрос 3
Mi11er
@Mi11er
A human...
Так написано же
Please remove the {'text'} arguments from this call.


@dp.callback_query(text='first')
Ответ написан
@ArchieWh1te
Python dev, Web dev
Вместо F.text пишем F.data
@router.callback_query(F.data.startswith('send_shtrihcode'))
async def get_send_shtrihcode(call: CallbackQuery):
       await call.answer(cache_time=5)
       await call.message.answer(f'Введите <b>ШтрихКод</b>)
Ответ написан
Комментировать
@x-Four-x
Python Developer
Если мы скопипастим ошибку в переводчик получим следущее:
Перевод

Эта ошибка может быть вызвана, когда вы пытаетесь зарегистрировать фильтры, как в версии 2.x этого фреймворка, если это правда, просто посмотрите соответствующие страницы документации.
Пожалуйста, удалите аргументы {'text'} из этого вызова.

Теперь мы заходим в документацию aiogram и находим эту страничку где показан пример:
@<router>.message(F.text == "hi")
Ответ написан
Ваш ответ на вопрос

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

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