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

Как сделать message_handler динамеческим?

Хочу сделать, чтоб message.text проверялось на наличие в списке или словаре и в зависимости от его позиции возвращал разные ответы, но не понимаю как
пробовал так:
for name in names:
    @dp.message_handler(lambda message: message.text == name)

и вот так 

@dp.message_handler(lambda message: message.text in track_names)

но не работает
  • Вопрос задан
  • 73 просмотра
Подписаться 1 Простой 8 комментариев
Решения вопроса 1
@kkid404 Автор вопроса
Все ребята, которые говорили, что дело в базе pythona, могут дальше сидеть и учить сами эту базу. Решение моего вопроса выглядит так, вдруг кому пригодиться:
@dp.message_handler()
async def song(message: types.Message):
if message.text in names:
count = names.index(message.text)
await bot.send_audio(message.chat.id, tracks[count])
else:
await bot.send_message(message.chat.id, "не понел")
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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