вот фрагмент кода
elif message.text == 'produkt':
# кнопки на название
markup = types.InlineKeyboardMarkup(row_width=2)
item1 = types.InlineKeyboardButton("apple", callback_data='applef')
item2 = types.InlineKeyboardButton("melon", callback_data='melon')
item3 = types.InlineKeyboardButton("bred", callback_data='bred')
item4 = types.InlineKeyboardButton("meat", callback_data='meat')
markup.add(item1, item2, item3, item4)
bot.send_message(message.chat.id,
'<b>В наличии из продуктов</b>', parse_mode='html', reply_markup=markup)
@bot.callback_query_handler(func = lambda call: True)
def callback_inline(call):
try:
if call.message:
if call.data == 'apple' or 'melon': #Вот в этом месте проблема
global a
a = call.data
print (a)
markup1 = types.InlineKeyboardMarkup(row_width=3)
item1 = types.InlineKeyboardButton("1 шт", callback_data='1')
item2 = types.InlineKeyboardButton("2 шт", callback_data='2')
item3 = types.InlineKeyboardButton("3 шт", callback_data='3')
markup1.add(item1, item2, item3)
bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id,
text="Выберите количество:",
reply_markup=markup1)
except Exception as e:
print(repr(e))
при нажатии на инлайн кнопку 'apple' все работает как нужно
кликабельными становяться все кнопки, даже если нажать на кнопку 'meat' появиться сообщение с выбором количества
Как сделать чтобы кликабельными были только те кнопки которые есть в условии проверки