Нужно вывести определенные данные из базы sqlite3 в кликабельные кнопки ReplyKeyboardMarkup
Разрабатываю чат-бота в телеграм при помощи aiogram, новичок. У меня есть база данных sqlite3, в ней хранятся фио юзеров, их регионы, учебные заведения и другая информация.
Мне нужно сделать клавиатуру ReplyKeyboardMarkup, чтобы каждая кнопка отвечала за определенный регион из базы данных. Причем количество регионов неизвестно и может меняться, по нажатии на кнопку региона должны выводиться в другой клавиатуре учебные заведения юзеров выбранного региона. Проблема в том, что я даже примерно не представляю, как это можно реализовать.
Пожалуйста, подскажите, как можно сделать хотя бы клавиатуру всех юзерских регионов из базы (дальше я разберусь, надеюсь), сойдет даже примерное описание методов, которые стоит использовать. Буду очень рад, если напишете код! Спасибо!
Ответы (1 шт):
but_list - список ваших значений
markup = ReplyKeyboardMarkup()
for i in but_list:
markup.add(f"P{i}")
# вместо P можно юзать какой-нибудь символ
@dp.message_handler(text_startswith="P")
async def button_pressed(msg: types.Message):
button = msg.text[1:]