Ошибка is not defined

Рейтинг: 0Ответов: 0Опубликовано: 15.04.2023

модуль bot:

from database.database import Database
from aiogram import Bot, Dispatcher
from config.config import bot_token
import handlers


bot = Bot(token=bot_token, parse_mode='HTML')
dp = Dispatcher(bot)
db = Database('database\database.db')

handlers.setup(dp)

код:

from bot import *
from keyboards.reply import *
from config.config import logs_channel
from aiogram import types

async def cmd_start(message: types.Message):
    if not db.user_exists(message.from_user.id):
        db.add_user(message.from_user.id, message.from_user.username)
        await bot.send_message(logs_channel, f'🔥 Зашел новый пользователь: @{message.from_user.username} (<code>{message.from_user.id}</code>)')
    await message.answer('Главное меню')

Ошибка:

  File "C:\Users\floydpower\PycharmProjects\casino\venv\Lib\site-packages\aiogram\dispatcher\dispatcher.py", line 415, in _process_polling_updates
    for responses in itertools.chain.from_iterable(await self.process_updates(updates, fast)):
                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\floydpower\PycharmProjects\casino\venv\Lib\site-packages\aiogram\dispatcher\dispatcher.py", line 235, in process_updates
    return await asyncio.gather(*tasks)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\floydpower\PycharmProjects\casino\venv\Lib\site-packages\aiogram\dispatcher\handler.py", line 117, in notify
    response = await handler_obj.handler(*args, **partial_data)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\floydpower\PycharmProjects\casino\venv\Lib\site-packages\aiogram\dispatcher\dispatcher.py", line 256, in process_update
    return await self.message_handlers.notify(update.message)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\floydpower\PycharmProjects\casino\venv\Lib\site-packages\aiogram\dispatcher\handler.py", line 117, in notify
    response = await handler_obj.handler(*args, **partial_data)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\floydpower\PycharmProjects\casino\handlers\user.py", line 7, in cmd_start
    if not db.user_exists(message.from_user.id):
           ^^
NameError: name 'db' is not defined

Я не понимаю, почему она возникает, ведь экземпляр класса Database (db) присутствует в модуле bot

Ответы

Ответов пока нет.