Задать вопрос
@Masvy

Можно ли передать данные из одного хендлера в другой с помощью inline-кнопок?

Добрый день. Есть бот, который выводит анкеты пользователей со статусом 'Ищет работу'. Данные для анкеты берутся из базы данных. Под этими анкетами появляются inline-кнопки, с помощью которых можно отправлять пользователя либо в категорию 'Не устраивает', либо в 'Устраивает'. Как реализовать перевод пользователей в разные категории?

Вот сам код:
@admin_router.callback_query(or_f(F.data == 'looking_for_work_pressed',
                                  F.data == 'update_pressed'))
async def show_applicants(callback: CallbackQuery,
                          session_maker: sessionmaker):
    await callback.message.edit_text(text=ADMIN['time'])
    applicants = await number_applicants(session_maker=session_maker)
    names = await applicants_name(session_maker=session_maker)
    city = await applicants_city(session_maker=session_maker)
    vacancies = await applicants_vacancies(session_maker=session_maker)
    employment = await applicants_employment(session_maker=session_maker)
    schedule = await applicants_schedule(session_maker=session_maker)
    user_name = await applicants_user_name(session_maker=session_maker)
    for i in range(int(applicants)):
        await callback.message.answer(text=f'Имя: {names[i]}\n'
                                      f'Город: {city[i]}\nВакансия: '
                                      f'{vacancies[i]}\nВид трудусьтройства: '
                                      f'{employment[i]}\nРасписание: '
                                      f'{schedule[i]}\n'
                                      f'https://t.me/{user_name[i]}',
                                      reply_markup=manipuations_kb)
    await callback.message.answer(text='Список польхователей окончен',
                                  reply_markup=manipuations_kb_2)


@admin_router.callback_query(F.data == 'not_satisfied_pressed')
async def move_dissatisfied(callback: CallbackQuery,
                            session_maker: sessionmaker):
    await callback.message.edit_text(text=ADMIN['move_dissatisfied'])


@admin_router.callback_query(F.data == 'arranges_pressed')
async def move_suits(callback: CallbackQuery,
                     session_maker: sessionmaker):
    await callback.message.edit_text(text=ADMIN['move_suits'])


Как в итоге менять статус? Он информация о статусе пользователя хранится в бд.

Вот так выглядит анкета:
64f888f2952eb272197487.png
  • Вопрос задан
  • 165 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
RimMirK
@RimMirK
Вроде человек. Вроде учусь. Вроде пайтону
либо передаешь непосредственно в колбек дате, либо записываешь данные куда-ни-будь в бд, а в колбеке передаешь айди
data:id
accept:72
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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