Я очень новичок в кодировании, но собрал простого бота для разногласий, в данный момент он не так уж много делает, но я храню список серверов, на которых он находится, каналов на каждом сервере, и пользователи на серверах. Код работает нормально, но выдает сообщение AttributeError, от которого я хотел бы избавиться. Ошибка отображается, когда пользователь, не являющийся мной, помещает сообщение на сервер.
Вот код, где происходит ошибка:
async def update_data(users, user, channels, channel, servers, server, message):
if not user.name in users:
users[user.name] = {}
users[user.name]["ID"] = user.id
if not channel.name in channels:
channels[message.server.name] = {}
channels[channel.name] = {}
channels[channel.name]["ID"] = channel.id
if not message.server.name in servers:
servers[message.server.name] = {}
servers[message.server.name]["ID"] = server.id
А вот и ошибка:
Игнорирование исключения в трассировке on_message (последний вызов был последним):
файл
"C: \ Users \ Harry \ Desktop \ Hafbot \ venv \ Lib \ сайт-пакеты \ диссонанс \ client.py",
строка 307, в _run_event
yield из getattr (self, event) (* args, ** kwargs) Файл "C: / Users / Harry / Desktop / Hafbot / The Wyre.py", строка 109, в on_message
await update_data (пользователи, message.author, каналы, message.channel, серверы, message.server, сообщение) Файл
«C: / Users / Harry / Desktop / Hafbot / The Wyre.py», строка 125, в update_data
channel [message.server.name] = {} AttributeError: объект 'NoneType' не имеет атрибута 'name'