@NitrOu
Начинающий программист

Ошибка async def aiogram 3x?

Пишу код для телеграм бота на библиотеке aiogram 3x.
В main пытаюсь вызвать функцию из другого модуля:
@dp.message(F.text == 'Получить дрифт-карту')
def new_card(message: types.Message):
    get_cards(message)

Вот кусочек из начала функции (именно на этот отрезок кода показывает ошибка):
async def get_cards(message: types.Message):
    from main import bot
    _user_id = message.chat.id
    channel_id = 'ID канала'
    is_subscribed = await bot.get_chat_member(chat_id=channel_id, user_id=_user_id)
    if is_subscribed.status == "left":
        await bot.send_message(_user_id, "*Для дальнейшей игры вам необходимо подписаться на канал⬇️*", reply_markup=kb().as_markup(), parse_mode="Markdown")
    else: ...

Вот сама ошибка(походу что-то я сделал не так и огроомная ошибка поменялась в маленькую):
C:\Users\akrav\Desktop\машынки\main.py:183: RuntimeWarning: coroutine 'get_cards' was never awaited
  get_cards(message)
RuntimeWarning: Enable tracemalloc to get the object allocation traceback


Если смогут пригодиться импорты:
В main:
from aiogram.fsm.context import FSMContext
import config, db, random, datetime, asyncio
from aiogram import Bot, Dispatcher, types, F
from aiogram.fsm.storage.memory import MemoryStorage
from handlers.get_card import get_cards

В get_card:
from aiogram import types
import db
import random, time, datetime, asyncio

P.S.
Заранее спасибо!
  • Вопрос задан
  • 208 просмотров
Решения вопроса 1
Mike_Ro
@Mike_Ro Куратор тега Python
Python, JS, WordPress, SEO, Bots, Adversting
Вот сама ошибка(походу что-то я сделал не так и огроомная ошибка поменялась в маленькую):
C:\Users\akrav\Desktop\машынки\main.py:183: RuntimeWarning: coroutine 'get_cards' was never awaited
get_cards(message)

Ну там как бы написано...

# def new_card(message: types.Message):
    # get_cards(message)

async def card_handler(message: types.Message):
    await get_cards(message)

P.S. вероятнее всего, там дальше возникнет проблема с декоратором, но это уже другой вопрос...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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