如何在aiogram 3.0中结合SQLite实现内联按钮生成器?含2.0转3.0示例
Aiogram 3.0 实现数据库驱动的按钮生成器
Aiogram 3.0 对键盘构建的API做了简化,以下是适配后的实现代码:
from aiogram.types import InlineKeyboardBuilder, InlineKeyboardButton def genmarkup(data): builder = InlineKeyboardBuilder() for item in data: # 从数据库数据中提取按钮文本与回调数据 builder.add(InlineKeyboardButton(text=item[1], callback_data=item[2])) # 可选:调整按钮排版,比如设置每行显示1个按钮 # builder.adjust(1) return builder.as_markup()
关键变化说明
- 无需手动通过
builder.export()生成键盘结构再创建InlineKeyboardMarkup,直接调用builder.as_markup()即可返回可用的内联键盘对象 - 按钮添加逻辑更直观,直接通过
builder.add()传入按钮实例完成添加 - 若需要自定义按钮的行数布局,使用
builder.adjust(n)方法(n为每行显示的按钮数量)即可实现
内容的提问来源于stack exchange,提问作者nerduz
相关产品推荐
相关产品推荐

