Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите исправить ошибку на Python

Тимур Елеуф Ученик (106), открыт 2 недели назад
После того как бот в тг спрашивает о возрасте дальше никуда не идёт. помогите исправить.
1 ответ
S.H.I. Оракул (74166) 2 недели назад
Посмотрите, что происходит у вас:
 # обработали имя 
await message.answer('Сколько лет?')
await EasyCode.waiting_for_anime.set() # <-- ПЕРЕКЛЮЧИЛИСЬ на waiting_for_anime
Следующее сообщение от пользователя придёт уже в состоянии EasyCode.waiting_for_anime.
Чтобы оно попало в ваш хэндлер on_anime, этот хэндлер должен быть зарегистрирован именно на это состояние:
 @dp.message_handler(state=EasyCode.waiting_for_anime)   # <-- важно! 
async def on_anime(message: types.Message, state: FSMContext):
...
Если в декораторе нет state=EasyCode.waiting_for_anime (или стоит другое состояние), то Telegram-бот просто не найдёт подходящий хэндлер и замолчит.
Похожие вопросы