Этот вопрос закрыт для ответов, так как повторяет вопрос Как сделать генерацию inline кнопок на aiogram 3.0?
@nerduz

Как Реализовать пагинацию inline кнопок в aiogram 3.0?

Нужно реализовать простую пагинацию для этого кода под неограниченный список пользователей (то есть кнопок )

def genmarkup(data):
    builder = KeyboardBuilder(button_type=InlineKeyboardButton)
    for i in data:
        button = InlineKeyboardButton(text=i[1], callback_data=i[2])
        builder.add(button)
        builder.adjust(1)
    return builder.as_markup()

@router_db.message(F.text == 'Users')
async def buy(message: Message):
    cur.execute("SELECT * FROM accounts")
    data = cur.fetchall()
    await bot.send_message(message.from_user.id, 'List:', reply_markup=genmarkup(data))
  • Вопрос задан
  • 441 просмотр
Ответы на вопрос 1
0ralo
@0ralo
Python backend developer
Ну, судя по реляционной бд, я полагаю есть вариант использовать LIMIT и OFFSET, получая чанки пользователей. Внизу клавиатуры делаете 2 стрелочки, которые в callback_payload'e хранят текущую "страницу" и направление. Условно 5 человек вывело, нажимаете на стрелку получаете еще 5 человек с офсетом 5 - выводите и тд.
Ответ написан
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы