AttributeError в классе, хотя User содержит __init__ данные
Случилась такая вот абра-кадабра, что почему-то функция .get_previous_messages()
возвращает AttributeError
, под предлогом того, что user
это NoneType
объект.
Ошибка:
Ignoring exception in on_message
Traceback (most recent call last):
File "C:\Users\heck3\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\disnake\client.py", line 703, in _run_event
await coro(*args, **kwargs)
File "e:\Projects\bot taldiexq\cogs\listener.py", line 46, in on_message
prev_messages = user.get_previous_messages(count = 3)
AttributeError: 'NoneType' object has no attribute 'get_previous_messages'
Слушатель:
user: then.User = fetch_user(user_id = author.id)
print(user)
prev_messages = user.get_previous_messages(count = 3)
difference = 0
for i in prev_messages:
msg: then.Message = i
if msg.content == message.content and channel.id == msg.channel_id:
difference += 1
Функция .get_previous_messages()
:
def get_previous_messages(self, count: int = 5):
connection = sqlite3.connect("database.db")
cursor = connection.cursor()
user_data = cursor.execute(f"SELECT * FROM messages WHERE user_id={self.user_id} ORDER BY time DESC LIMIT {count}").fetchall()
connection.close()
msgs = []
for msg in user_data:
message = Message()
message.id = msg[0]
message.message_id = msg[1]
message.channel_id = msg[2]
message.user_id = msg[3]
message.time = msg[4]
message.content = msg[5]
msgs.append(message)
return msgs