КОД:
Генерируются кнопки зависимости сколько данных в сервере
@dp.callback_query_handler(text="offers")
async def get_inst(call: CallbackQuery):
try:
user_data = await get_data(call.from_user.id)
key = user_data[1]
header = {'Api-Key': f'{key}'}
active_db = requests.get(url, headers=header, json=params)
data = active_db.json()
i = 0
keyboard_markup = types.InlineKeyboardMarkup(row_width=2)
while i<len(data):
btn_text = str(data[i]['name'])
btn_callback = str(data[i]['id'])
i += 1
keyboard_markup.add(types.InlineKeyboardButton(text=btn_text, callback_data=btn_callback, row_width=2))
print(btn_callback)
await call.message.answer(text="Выберите ниже кнопки который хотите", reply_markup=keyboard_markup)
except Exception as err:
logger.error(err)
await call.message.answer(("Вам не доступны данные! Обратитесь к поддержке! "))
Вот тут второй hanlder который отвечает за инлине кнопки и должен передать данные зависимости что нажал пользователь
@dp.callback_query_handler(text="ТУТ ДОЛЖЕН БЫТЬ КАЛЛБЕК ДАТА КОТОРЫЙ НАЖАЛ ПОЛЬЗОВАТЕЛЬ на пример один из кнопок был ид 400 ") #Все работает проверил
async def get_inst(call: CallbackQuery):
try:
user_data = await get_data(call.from_user.id)
key = user_data[1]
header = {'Api-Key': f'{key}'}
# print(header)
active_offers = requests.get(url, headers=header, json=params)
data = active_offers.json()
campaign = data[0]['name'] # И в зависимости какой айди нажал пользователь 0 должен меняться на него
await call.message.answer(
f"campaign : {campaign }\n"
parse_mode='html')
except Exception as err:
logger.error(err)
await call.message.answer(("Вам не доступны данные! Обратитесь к поддержке! "))
Как я могу найти ид кнопки на который нажал кнопку пользователь и зависимости от него передать нужные данные Не могу разобраться не прошу код писать если у вас есть хоть какие-то советы подскажите буду благодарен