AttributeError: 'Message' object has no attribute 'id'

Вообщем, пишу Telegram бота, у меня будет вкладка 'Игры'. Написал игру но вылезает ошибка, типа 'Объект 'Message' не имеет атрибута 'id''. Попробовал все. Не получается. ПИШУ ПРИ ПОМОЩИ БИБЛИОТЕКИ AIOGRAM

@dp.callback_query_handler(lambda call: True)
async def callback_func(query):
    user_data = maps[query.message.chat.id]
    new_x, new_y = user_data['x'], user_data['y']

    if query.data == 'left':
        new_x -= 1
    if query.data == 'right':
        new_x += 1
    if query.data == 'up':
        new_y -= 1
    if query.data == 'down':
        new_y += 1

    if new_x < 0 or new_x > 2 * cols - 2 or new_y < 0 or new_y > rows * 2 - 2:
        return None
    if user_data['map'][new_x + new_y * (cols * 2 - 1)]:
        return None

    user_data['x'], user_data['y'] = new_x, new_y

    if new_x == cols * 2 - 2 and new_y == rows * 2 - 2:
        bot.edit_message_text(chat_id=query.message.chat.id,
                              message_id=query.message.id,
                              text="Вы выиграли")
        return None

    bot.edit_message_text(chat_id=query.message.chat.id,
                          message_id=query.message.id,
                          text=get_map_str(user_data['map'], (new_x, new_y)),
                          reply_markup=keyboard)

if __name__ == '__main__':
    executor.start_polling(dp, skip_updates=True)

Ответы (1 шт):

Автор решения: Xander

С aiogram я не работал, но судя по документации, у класса Message нет аттрибута id, есть только аттрибут message_id.

То есть, насколько я понимаю, вам надо заменить

message_id=query.message.id

на

message_id=query.message.message_id
→ Ссылка