@ar4ushman

Как исправить ошибку в python — Task exception was never retrieved?

Задача - сделать многоуровневое меню в Телеграмм-боте. У меня вылезает ошибка "Task exception was never retrieved".
def kingdom():
    animals = KeyboardButton(text='Животные')
    plants = KeyboardButton(text='Растения')
    kb_kingdom = ReplyKeyboardMarkup(resize_keyboard=True, one_time_keyboard=True).add(animals, plants)
    return kb_kingdom

def typy():
    protozoa = KeyboardButton('Простейшие')
    chordates = KeyboardButton('Хордовые')
    kb_types = ReplyKeyboardMarkup(resize_keyboard=True, one_time_keyboard=True).add(protozoa, chordates)
    return kb_types

@dp.message_handler(CommandStart())
async def cmd_start(msg: types.Message):
    await msg.reply('Привет! Выбери царство.', reply_markup=kingdom)

@dp.message_handler(text='Животные')
async def animals(msg: types.Message):
    await msg.answer(msg.from_user.id, f'Вы выбрали царство животных', reply_markup=typy)
  • Вопрос задан
  • 150 просмотров
Решения вопроса 1
SoreMix
@SoreMix
yellow
В строке
await msg.reply('Привет! Выбери царство.', reply_markup=kingdom)
функцию kingdom нужно вызвать, чтобы она вернула клавиатуру. Без этого вы передаете саму функцию

await msg.reply('Привет! Выбери царство.', reply_markup=kingdom())
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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