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

Написал простенького бота, выдаёт ошибку AttributeError: 'CallbackQuery' object has no attribute 'chat', что делать?

Вот код:
import telebot
from telebot import types

# Bot's token
bot = telebot.TeleBot('xxx')

# Команды для старта
@bot.message_handler(commands = ['start'])
# Меню бота
@bot.callback_query_handler(func = lambda call: True)

@bot.message_handler(content_types = ['text'])

def main_menu(message):
    # Создание клавиатуры (Reply)
    markup_reply = types.ReplyKeyboardMarkup(resize_keyboard=True)
    # Кнопки1
    food_menu = types.KeyboardButton(text='Меню')
    my_basket = types.KeyboardButton(text='Корзина')
    info_about_delivery = types.KeyboardButton(text='Информация о доставке')
    support = types.KeyboardButton(text='Поддержка')
    markup_reply.add(food_menu, my_basket, info_about_delivery, support)
    msg = bot.send_message(message.chat.id, text='Здравствуйте! Это бот - ресторан "название". Выберете нужный пункт меню.',reply_markup=markup_reply)
    bot.register_next_step_handler(msg, tralyly)
def tralyly(message):
    if message.text == 'Меню':
        markup_inline = types.InlineKeyboardMarkup()

        inline_item_sushi = types.InlineKeyboardButton(text = 'Суши', callback_data='sushi')
        inline_item_burgers = types.InlineKeyboardButton(text = 'Бургеры', callback_data='burgers')
        inline_item_shaurma = types.InlineKeyboardButton(text = 'Шаурма', callback_data='shaurma')

        markup_inline.add(inline_item_sushi, inline_item_burgers, inline_item_shaurma)
        msg1 = bot.send_message(message.chat.id, text='Меню нашего ресторана: ', reply_markup=markup_inline)
        bot.register_next_step_handler(msg1, food_menu_func)
    elif message.text == 'Корзина':
        pass
    elif message.text == 'Поддержка':
        pass
    elif message.text == 'Информация по доставке':
        pass
def food_menu_func(message):
    if call.data == 'sushi':
        bot.send_message(message.chat.id, text='Оки')
    if call.data == 'burgers':
        pass
    if call.data == 'shaurma':
        pass
bot.polling()


Выдаёт ошибку: AttributeError: 'CallbackQuery' object has no attribute 'chat'
  • Вопрос задан
  • 1921 просмотр
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
@thewayofmagic
У метода CallbackQuery нет обьекта chat, лучше читайте документацию.
Ответ написан
Ваш ответ на вопрос

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

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