You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 20:37:05