Помимо традиционного метода создания клавиатуры в aiogram, существует альтернативный способ — с использованием билдеров (Builder). Представим, что у вас есть база данных, содержащая определённую информацию, например, о товарах. Из этой базы данных вы получаете список товаров: data = ("Nike", "Adidas", "Reebok") Из этого кортежа необходимо создать клавиатуру, при этом данные могут быть разными: товары можно добавлять или удалять из базы данных. В таком случае требуется создать динамическую клавиатуру. Это можно сделать и обычным способом: from aiogram.types import (ReplyKeyboardMarkup, KeyboardButton, InlineKeyboardMarkup, InlineKeyboardButton) data = ("Nike", "Adidas", "Reebok") def brands(): buttons = [] for brand in data: buttons.append([KeyboardButton(text=brand)]) keyboard = ReplyKeyboardMarkup(keyboard=buttons) return keyboard В теле функции brands создаётся список, в который добавляются другие списки. Это не очень удобно, поскольку мы не
KeyboardBuilder — конструктор клавиатур для ваших ботов
29 сентября 202429 сен 2024
52
1 мин