@plyshk1n2k

Как формировать клавиатуру бота исходя из полученных данных бд?

Всем привет! У меня есть вот такой код клавиатуры бота.
sql = "SELECT f_name, l_name FROM `accounts`"
cur.execute(sql)
name_acc = '{}'.format(cur.fetchall()).replace('(', '').replace(')', '').replace('\'', '').replace(',', '')


settings2_keyboard = {
    'one_time': True,
    'buttons': [
        [
            {
                'action': {
                    'type': 'text',
                    "payload": "{\"button\": \"1\"}",
                    "label": '{}'.format(name_acc)
                },
                'color': 'primary'
            }
        ],
        [
            {
                'action': {
                    'type': 'text',
                    "payload": "{\"button\": \"2\"}",
                    "label": 'Отмена'
                },
                'color': 'negative'
            }
        ],
    ]
}
settings2_keyboard = json.dumps(settings2_keyboard, ensure_ascii=False).encode('utf-8')
settings2_keyboard = str(settings2_keyboard.decode('utf-8'))


У меня получается сформировать надпись кнопки исходя из полученных данных из бд, но если в таблице несколько нужных мне записей мне также нужно добавить эти кнопки с данными строк. Т.е. сейчас по дефолту у меня берется первая строка из таблицы и формируется 1 кнопка. а мне нужно чтобы кнопок было столько же сколько строк в таблице. Помогите советом или кодом пж. Буду очень благодарен
  • Вопрос задан
  • 115 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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