Помощь в создании кнопок
Помогите пожалуйста с добавлением опции выбора причины отказа, при нажатии на кнопку "Отказать" надо что бы появились кнопки с причинами, пример:Неподходящий опыт,Недостаточная активность.
Буду ОЧЕНЬ благодарен если кто-то поможет
def handle_approve_reject(call):
"""Обработчик кнопок Одобрить/Отказать."""
db_connection = sqlite3.connect('applications.db')
db_cursor = db_connection.cursor()
action, application_id = call.data.split("_")
application_id = application_id.strip()
# Get application data from the database
db_cursor.execute("SELECT * FROM applications WHERE id=?", (application_id,))
application_data = db_cursor.fetchone()
if application_data:
context = {
'user_chat_id': application_data[2],
'nickname': application_data[3],
'current_position': application_data[4],
'desired_position': application_data[5],
'status': application_data[8]
}
if action == "approve":
new_status = f"Одобрено by: @{call.from_user.username}"
# Отправляем пользователю сообщение о одобрении заявки
user_chat_id = context['user_chat_id']
bot.send_message(user_chat_id, f"🎉🎊🍾 Ваша заявка на повышение на должность '{context['desired_position']}' одобрена by: @{call.from_user.username}")
elif action == "reject":
new_status = f"Отказано by: @{call.from_user.username}"
# Отправляем пользователю сообщение об отказе заявки
user_chat_id = context['user_chat_id']
bot.send_message(user_chat_id, f"🥺 Ваша заявка на повышение на должность '{context['desired_position']}' отклонена by: @{call.from_user.username}")
# Update status in the database
db_cursor.execute("UPDATE applications SET status=? WHERE id=?", (new_status, application_id))
db_connection.commit()
# Edit the message to remove inline buttons and update the status
new_message_text = f"От: {context['nickname']}\n" \
f"Текущая должность: {context['current_position']}\n" \
f"Желаемая должность: {context['desired_position']}\n" \
f"Статус: {new_status}"
bot.edit_message_text(chat_id=management_chat_id, message_id=call.message.message_id,
text=new_message_text, parse_mode='MarkdownV2')
else:
bot.send_message(call.from_user.id, "Извините, произошла ошибка при обработке заявки.")
Источник: Stack Overflow на русском