Декоратор у неинициализированного объекта в Python
У меня есть класс, в который я передаю некоторый токен, с помощью которого инициализируется объект телеграм бота. В этом же классе я применяю декораторы к некоторым функциям. Однако, при объявлении декоратора нужна ссылка на объект бота, который инициализируется только в конструкторе. В итоге, вылетает ошибка "NameError: name '_bot' is not defined"
Как мне передавать объект в класс и использовать его декораторы?
class Shop:
_bot:AsyncTeleBot
def __init__(self, token):
self._token = token
self._bot = AsyncTeleBot(token)
def start_bot(self):
try:
asyncio.run(self._bot.infinity_polling())
except BaseException as ex: print(ex)
@_bot.message_handler(commands=['start']) //Вот здесь вылетает ошибка NameError: name '_bot' is not defined
async def start(self, message):
await self._default_menu_handler.start_handler(message)